ExcelVBA デスクトップにファイルを保存に使うパスを取得する方法

 

ExcelVBAで、デスクトップにファイルを保存したり、デスクトップ上のファイルにアクセスする場合、デスクトップのパスを取得する必要があります。VBAを使用すると、自動的にそのパスを取得して操作することができます。使い方や注意点など、サンプルコードをもとに具体的に解説します。

 

Excel VBAの資格でキャリアアップ!
就活や転職で有利になるVBAエキスパート資格を解説!
👉 VBAエキスパート資格のメリットを詳しく知る

 

Excel VBA デスクトップパス取得の利用

以下のようなシーンで利用されます。

1.デスクトップにファイルを保存
ユーザーが簡単に見つけられるように、生成したファイルをデスクトップに保存する。

2.デスクトップ上の特定ファイルを開く
デスクトップ上に保存されているファイルをVBAで操作・読み取る。

 

Excel VBA デスクトップパス取得の使い方とポイント

使い方

VBAを使ってデスクトップのパスを取得するためには、`Environ`関数を利用します。この関数を使うと、Windowsの環境変数にアクセスでき、ユーザーごとのデスクトップパスを取得可能です。

 

ポイント

1.ユーザー環境の違い
取得したデスクトップパスは、実行するPCのユーザーごとのデスクトップパスです。他のPCやユーザーでは異なるパスになる可能性があるため、環境に依存します。

2.ファイルの存在確認
デスクトップにファイルを保存する場合、そのパスが存在するか確認し、上書きに注意が必要です。

 

Excel VBA デスクトップパス取得のサンプルコード

Excel VBAの資格でキャリアアップ!
就活や転職で有利になるVBAエキスパート資格を解説!
👉 VBAエキスパート資格のメリットを詳しく知る

デスクトップにファイルを保存するコード
例えば、デスクトップに「TestFile.txt」というテキストファイルを作成するVBAの例です。

Option Explicit

Sub SaveToDesktop()
    Dim desktopPath As String
    Dim filePath As String
    desktopPath = Environ("USERPROFILE") & "\Desktop"
    filePath = desktopPath & "\TestFile.txt"
    
    ' テキストファイルの作成
    Open filePath For Output As #1
    Print #1, "これはテストファイルです。"
    Close #1
    
    MsgBox "ファイルをデスクトップに保存しました。"
End Sub

デスクトップに存在するファイルを開く
デスクトップ上に保存されている「TestFile.txt」を開いて中身を読み取る例です。

 

Environ関数でデスクトップパスを取得──
「なんとなくコピペ」で済ませていませんか?

パスの仕組みや環境変数について、ちゃんと理解できているか不安になることはありませんか?

“今の自分のVBAスキル”を、点数で見える形にしてみませんか?

※この教材は「試験対策」も「実力診断」も、どちらにも対応しています。

 

Option Explicit

Sub OpenFromDesktop()
    Dim desktopPath As String
    Dim filePath As String
    Dim fileContent As String
    desktopPath = Environ("USERPROFILE") & "\Desktop"
    filePath = desktopPath & "\TestFile.txt"
    
    ' ファイルが存在するか確認
    If Dir(filePath) <> "" Then
        ' ファイルを開いて読み込み
        Open filePath For Input As #1
        Input #1, fileContent
        Close #1
        MsgBox "ファイルの中身: " & fileContent
    Else
        MsgBox "ファイルが見つかりません。"
    End If
End Sub

ExcelVBAでデスクトップパスを取得する方法は、ファイルの保存や読み込みを自動化したいときに非常に便利です。簡単なコードで現在のユーザーのデスクトップパスを取得し、ファイル操作を効率化することが可能です。

「できてるはず」──そう思っていても、
「このやり方、本当に正しいのかな…?」と感じたことはありませんか?

VBAを実務で使いこなしているあなたへ。

“今の自分のVBAスキル”を、点数で見える形にしてみませんか?

※この教材は「試験対策」も「実力診断」も、どちらにも対応しています。