
ExcelVBAで、デスクトップにファイルを保存したり、デスクトップ上のファイルにアクセスする場合、デスクトップのパスを取得する必要があります。VBAを使用すると、自動的にそのパスを取得して操作することができます。使い方や注意点など、サンプルコードをもとに具体的に解説します。
📌 「これ、自動化できたらラクなのに…」と思ったこと、ありませんか?
実はその作業、Excelマクロで簡単に自動化できるかもしれません。
「でもマクロって難しそう…」という方のために、完全初心者向けの入門記事をご用意しました!
👇実務で“そのまま使える”テンプレ付きで、コピペするだけ!
初心者向けエクセルマクロの作り方を解説|コピペOK実務テンプレ付き
Excel VBA デスクトップパス取得の利用
以下のようなシーンで利用されます。
1.デスクトップにファイルを保存
ユーザーが簡単に見つけられるように、生成したファイルをデスクトップに保存する。
2.デスクトップ上の特定ファイルを開く
デスクトップ上に保存されているファイルをVBAで操作・読み取る。
Excel VBA デスクトップパス取得の使い方とポイント
VBAを使ってデスクトップのパスを取得するためには、`Environ`関数を利用します。この関数を使うと、Windowsの環境変数にアクセスでき、ユーザーごとのデスクトップパスを取得可能です。
1.ユーザー環境の違い
取得したデスクトップパスは、実行するPCのユーザーごとのデスクトップパスです。他のPCやユーザーでは異なるパスになる可能性があるため、環境に依存します。
2.ファイルの存在確認
デスクトップにファイルを保存する場合、そのパスが存在するか確認し、上書きに注意が必要です。
Excel 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」を開いて中身を読み取る例です。
👇実務で“そのまま使える”テンプレ付きで、コピペするだけ!
初心者向けエクセルマクロの作り方を解説|コピペOK実務テンプレ付き
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でデスクトップパスを取得する方法は、ファイルの保存や読み込みを自動化したいときに非常に便利です。簡単なコードで現在のユーザーのデスクトップパスを取得し、ファイル操作を効率化することが可能です。
📌「Excel VBAで自動化するコードのベースが習得できる資格」
ExcelVBA初心者向けの資格問題集(解説ページ付き)
👉Excel VBAエキスパートベーシック問題集
ExcelVBAの基礎的なことが理解できている方向けの問題集(解説ページ付き)
👉ExcelVBAエキスパートスタンダード問題集