特殊フォルダのパスを取得する(デスクトップのパス取得)

スポンサーリンク

PCごとに異なるデスクトップを指定したい

ファイルをデスクトップに保存するVBAコードの場合、パスの中にユーザー名が含まれていたり、Windowsのバージョンによってパスが違うために他のパソコンではきちんと動作しません。

今回はどんなPCの環境でもデスクトップが指定できるWSH(Windows Scripting Host)を用いた特殊フォルダの取得をお伝えします。

デスクトップを使用するコードの例

デスクトップを指定する必要のあるコードの例は以下のようなものがあります。
「Users」が「Documents and Settings」になっている場合もあります。

①表示されているExcelファイルをデスクトップに保存する。

Sub デスクトップに保存するマクロ1()

ActiveWorkbook.SaveAs Filename:=”C:\Users\(ユーザー名)\Desktop\あいうえお.xlsm”, _
FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False

End Sub

②デスクトップにフォルダを作成する。

以前紹介したFSO(FileSystemObject)を用いたフォルダ操作のコードです。
デスクトップに「あいうえお」というフォルダを作成するコードになります。

Sub デスクトップにあいうえおフォルダを作成するマクロ()

Dim FSO As Object
Set FSO = CreateObject(“Scripting.FileSystemObject”)
FSO.CreateFolder “C:\Users\(ユーザー名)\Desktop\あいうえお”
Set FSO = Nothing

End Sub

③デスクトップにファイルをコピーするマクロ

②と同じく以前紹介したFSO(FileSystemObject)を用いたファイル操作のコードです。
Dドライブのa.jpgというファイルをデスクトップにコピーするコードになります。

Sub デスクトップにファイルaをコピーするマクロ()

Dim FSO As Object
Set FSO = CreateObject(“Scripting.FileSystemObject”)
FSO.CopyFile “D:\a.jpg”, “C:\Users\(ユーザー名)\Desktop\”
Set FSO = Nothing

End Sub

スポンサーリンク

WSH(Windows Scripting Host)の使うための準備

ユーザー名やWindowsのバージョンにかからわずにデスクトップを指定するためにWSH(Windows Scripting Host)を用いますが、その使い方は以下のようになります。

①最初と最後に記載するコード

WSH(Windows Scripting Host)の使い方はFSO(FileSystemObject)と似ています。
使用する場合、最初に以下のコードを書きます。

Dim WSH As Object
Set WSH = CreateObject(“Wscript.Shell”)

また最後には以下のコードを書くのが決まりです。(書かなくてもきちんと動きますが。)

Set WSH = Nothing

②指定したデスクトップを使いやすいように変数に入れる。

取得するデスクトップパスを以下のように変数に入れておくと便利です。

Dim DesktopPath As String
DesktopPath = WSH.SpecialFolders(“Desktop”)

WSH(Windows Scripting Host)の使ったコードの例

①画面に表示されているExcelファイルをデスクトップに保存する。

現在表示されているファイルをデスクトップに保存するコードは以下のように記載できます。

Sub デスクトップに保存するマクロ2()

Dim WSH As Object
Set WSH = CreateObject(“Wscript.Shell”)
Dim DesktopPath As String
DesktopPath = WSH.SpecialFolders(“Desktop”)

ActiveWorkbook.SaveAs Filename:= DesktopPath & “\あいうえお.xlsm”, _
FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
‘DesktopPathの続きは「&」を用いて表示する

Set WSH = Nothing

End Sub

②デスクトップにフォルダを作成する

デスクトップに「あいうえお」というフォルダを作成するマクロはWSH(Windows Scripting Host)を用いて以下のように表されます。

Sub デスクトップにフォルダを作成するマクロ2()

Dim WSH As Object
Dim FSO As Object
Dim DesktopPath As String
Set WSH = CreateObject(“Wscript.Shell”)
Set FSO = CreateObject(“Scripting.FileSystemObject”)
DesktopPath = WSH.SpecialFolders(“Desktop”)
FSO.CreateFolder DesktopPath & “\あいうえお”
Set FSO = Nothing
Set WSH = Nothing

End Sub

③デスクトップにファイルをコピーするマクロ

Dドライブのa.jpgというファイルをデスクトップにコピーするコードをWSH(Windows Scripting Host)を用いると以下のようになります。

Sub デスクトップにファイルをコピーするマクロ2()

Dim WSH As Object
Dim FSO As Object
Dim DesktopPath As String
Set WSH = CreateObject(“Wscript.Shell”)
Set FSO = CreateObject(“Scripting.FileSystemObject”)
DesktopPath = WSH.SpecialFolders(“Desktop”)
FSO.CopyFile “D:\a.jpg”, DesktopPath & “\”
Set FSO = Nothing

End Sub

コードは少し増えますが、これでどんなPCでも共通で使うことができるようになります。

おすすめ書籍 amazonicon Amazon rakutenicon 楽天 Yahooicon Yahoo検索
amazoniconAmazon
rakutenicon楽天Kobo電子書籍ストア
続 Excel VBAのプログラミングのツボとコツがゼッタイにわかる本【電子書籍】[ 立山秀利 ]
価格:2,527
rakutenicon楽天ブックス
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本(続) 最初からそう教えてくれればいいのに! Excel [ 立山秀利 ]
価格:2,808
rakuteniconbookfan 2号店 楽天市場店
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本/立山秀利【1000円以上送料無料】
価格:2,376
rakutenicon楽天ブックス
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 最初からそう教えてくれればいいのに! Excel [ 立山秀利 ]
価格:2,376
rakuteniconHMV&BOOKS online 1号店
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 最初からそう教えてくれればいいのに!Excel2007 / 2003対応 / 立山秀利 【本】
価格:2,376
rakuteniconブックオフオンライン楽天市場店
【中古】 Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 最初からそう教えてくれればいいのに!Excel2007/2003対応 /立山秀利【著 【中古】afb
価格:1,042
rakuteniconKSC
『中古』続ExcelVBAのプログラミングのツボとコツがゼッタイにわかる本
価格:6,989
rakuteniconブックサプライ
USED【送料無料】デバッグ力でスキルアップ!ExcelVBAのプログラミングのツボとコツがゼッタイにわかる本 立山 秀利
価格:3,741
rakutenicon楽天Kobo電子書籍ストア
続々 Excel VBAのプログラミングのツボとコツがゼッタイにわかる本【電子書籍】[ 立山秀利 ]
価格:2,430
rakuteniconKSC
『中古』ExcelVBAのプログラミングのツボとコツがゼッタイにわかる本
価格:6,468
rakuteniconKSC
『中古』続々ExcelVBAのプログラミングのツボとコツがゼッタイにわかる本
価格:10,788
rakuteniconネットショップ駿河屋 楽天市場店
【中古】単行本(実用) ≪産業≫ デバッグ力でスキルアップ!Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 / 立山秀利【中古】afb
価格:2,020
rakutenicon楽天Kobo電子書籍ストア
デバッグ力でスキルアップ! Excel VBAのプログラミングのツボとコツがゼッタイにわかる本【電子書籍】[ 立山秀利 ]
価格:2,236
rakuteniconブックオフオンライン楽天市場店
【中古】 続ExcelVBAのプログラミングのツボとコツがゼッタイにわかる本 最初からそう教えてくれればいいのに! /立山秀利【著】 【中古】afb
価格:1,264
rakuteniconブックサプライ
USED【送料無料】続ExcelVBAのプログラミングのツボとコツがゼッタイにわかる本 [Tankobon Hardcover] 立山 秀利
価格:1,454
rakuteniconぐるぐる王国DS 楽天市場店
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本
価格:2,376
rakuteniconbookfan 1号店 楽天市場店
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 続/立山秀利【合計3000円以上で送料無料】
価格:2,808
rakuteniconクロネコ書店
【中古】Excel VBAのプログラミングのツボとコツがゼッタイにわかる本—最初からそう教えてくれればいいのに!Excel2007/2003対応【中古】
価格:3,551
rakuteniconドラマ 本と中古ゲームの販売買取
【新品】【本】Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 続 立山秀利/著
価格:2,808
rakuteniconbookfan 1号店 楽天市場店
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本/立山秀利【合計3000円以上で送料無料】
価格:2,376
rakuteniconぐるぐる王国DS 楽天市場店
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 続
価格:2,808
rakutenicon楽天Kobo電子書籍ストア
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本【電子書籍】[ 立山秀利 ]
価格:2,138
rakuteniconぐるぐる王国 楽天市場店
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 続
価格:2,808
rakuteniconネットショップ駿河屋 楽天市場店
【中古】単行本(実用) ≪コンピュータ≫ Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 / 立山秀利【中古】afb
価格:900
rakuteniconbookfan 2号店 楽天市場店
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 続/立山秀利【1000円以上送料無料】
価格:2,808
rakuteniconぐるぐる王国 楽天市場店
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本
価格:2,376
rakuteniconHMV&BOOKS online 1号店
【送料無料】 続ExcelVBAのプログラミングのツボとコツがゼッタイにわかる本 最初からそう教えてくれればいいのに! / 立山秀利 【本】
価格:2,808
rakuteniconVALUE BOOKS
【中古】Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 最初からそう教えてくれればいいのに! Excel /秀和システム/立山秀利 (単行本)
価格:1,005
rakuteniconドラマ 本と中古ゲームの販売買取
【新品】【本】Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 立山秀利/著
価格:2,376
Yahooicon京都大垣書店Yahoo!店
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 続 / 立山 秀利 著
価格:2,808
YahooiconWINDY BOOKS on line
Excel  VBAのプログラミングのツボとコツがゼッタイにわかる本 / 出版社-秀和システム
価格:2,376
Yahooiconbookfan Yahoo!店
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本/立山秀利
価格:2,376
Yahooiconbookfanプレミアム
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 続 / 立山秀利
価格:2,808
Yahooiconbookfan Yahoo!店
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 続/立山秀利
価格:2,808
Yahooiconbookfanプレミアム
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 / 立山秀利
価格:2,376
YahooiconHonya Club.com Yahoo!店
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 続/立山秀利
価格:2,808
YahooiconHonya Club.com Yahoo!店
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本/立山秀利
価格:2,376
Yahooiconぐるぐる王国 ヤフー店
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 続
価格:2,808
Yahooiconぐるぐる王国 スタークラブ
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 続
価格:2,808
Yahooiconぐるぐる王国2号館 ヤフー店
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 続
価格:2,808
Yahooiconぐるぐる王国DS ヤフー店
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 続
価格:2,808
Yahooiconぐるぐる王国 ヤフー店
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本
価格:2,376
Yahooiconぐるぐる王国 スタークラブ
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本
価格:2,376
Yahooiconぐるぐる王国2号館 ヤフー店
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本
価格:2,376
Yahooiconぐるぐる王国DS ヤフー店
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本
価格:2,376
YahooiconHMV&BOOKS online Yahoo!店
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 最初からそう教えてくれればいいのに!Excel2007 /
価格:2,376
Yahooiconドラマ書房Yahoo!店
新品本/Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 続 立山秀利/著
価格:2,808
Yahooiconドラマ書房Yahoo!店
新品本/Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 立山秀利/著
価格:2,376
Yahooicon本とゲームのドラマYahoo!店
新品本/Excel VBAのプログラミングのツボとコツがゼッタイにわかる本 続 立山秀利/著
価格:2,808

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする