ExcelVBA Windowsのエクスプローラーで特定フォルダを開き確認する方法

 

ExcelVBA Windowsのエクスプローラーで特定のフォルダを開き、ユーザーがそのフォルダの内容を確認できるようにします。使い方や注意点など、サンプルコードをもとに具体的に解説します。

 

📌 「これ、自動化できたらラクなのに…」と思ったこと、ありませんか?
実はその作業、Excelマクロで簡単に自動化できるかもしれません。
「でもマクロって難しそう…」という方のために、完全初心者向けの入門記事をご用意しました!

👇実務で“そのまま使える”テンプレ付きで、コピペするだけ
初心者向けエクセルマクロの作り方を解説|コピペOK実務テンプレ付き

 

Excel VBA 特定フォルダを開く利用

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

1.ユーザーに指定したフォルダを表示させたい。

2.ファイルの保存先や出力先のフォルダを簡単に確認したい。

3.自動処理後に生成されたファイルが保存されたフォルダをすぐに開きたい。

使い方

Shell メソッドを使い、指定したフォルダパスを引数に渡すことでエクスプローラーを開きます。

ポイント

1.フォルダの存在確認
指定したフォルダが存在しないとエラーになるため、事前に確認する必要があります。

2.フォルダパスの形式
パスが正確でなければ、エクスプローラーが開けません。

3.ネットワークドライブ
ネットワーク上のフォルダを開く場合、適切にマッピングされている必要があります。

 

Excel VBA 特定フォルダを開くサンプルコード

特定のフォルダを開く

Option Explicit

Sub OpenFolder()
    Dim folderPath As String
    folderPath = "C:\Users\User\Desktop\sourceFile" ' 開きたいフォルダのパスを指定

    ' フォルダが存在するか確認
    If Dir(folderPath, vbDirectory) <> "" Then
        Shell "explorer.exe " & folderPath, vbNormalFocus ' フォルダを開く
    Else
        MsgBox "フォルダが見つかりません: " & folderPath, vbExclamation
    End If
End Sub

自分の実力を客観的にチェックしたい…。そんな方のために、自分に合ったスタート地点がわかる無料のExcelVBAベーシック選択問題集をご用意しました。

👉無料ExcelVBAベーシック選択問題138問

1. folderPath で開きたいフォルダのパスを指定します。

2. Dir 関数でフォルダが存在するか確認します。

3. Shell "explorer.exe" を使ってエクスプローラーでフォルダを開きます。

ユーザーにフォルダを選択させて、そのフォルダを開く

Option Explicit

Sub OpenSelectedFolder()
    Dim folderPath As String
    With Application.FileDialog(msoFileDialogFolderPicker)
        .Title = "フォルダを選択してください"
        If .Show = -1 Then ' フォルダが選択された場合
            folderPath = .SelectedItems(1)
            Shell "explorer.exe " & folderPath, vbNormalFocus
        Else
            MsgBox "フォルダが選択されませんでした", vbExclamation
        End If
    End With
End Sub

一部のセキュリティポリシーでは Shell が使用できない場合があります。

フォルダの作成や削除などを組み合わせることで、さらに自動化の幅を広げることが可能です。処理完了後にフォルダを開くことで、ユーザーの利便性を向上できます。

これを活用すれば、フォルダ操作がスムーズになり、業務の効率化に役立ちます。

 

記憶定着問題集

操作方法:1.●●●をクリック(スマホはタップ)で答え表示。2.答えをクリック(スマホはタップ)で●●●表示。1⇔2を繰り返すことで、記憶を定着できます。

1. ●●● で開きたいフォルダのパスを指定します。

2. ●●● 関数でフォルダが存在するか確認します。

3. ●●● を使ってエクスプローラーでフォルダを開きます。

 

Excel VBAエキスパートベーシックとスタンダード、どちらを選べばいいか判断が難しい…。そんな方のために、自分に合ったスタート地点がわかる無料のExcelVBAベーシック選択問題集を用意しました。

👉無料ExcelVBAベーシック選択問題138問