外部連携 × 外部アプリ起動
Excel VBAから 外部アプリケーションを起動 することで、Excelを「操作の起点」にできます。
例えば「メモ帳を開く」「ブラウザを起動する」「WordやPowerPointを開く」など、業務でよく使うアプリをExcelから呼び出せます。
初心者向けに、コード例やテンプレートをかみ砕いて説明します。
基本の考え方
- 外部アプリ起動の方法
Shell関数を使うのが基本。- 起動するアプリの「実行ファイル名」や「パス」を指定する。
- 用途:
- Excelからワンクリックで外部アプリを開く
- データ処理後に関連アプリを自動起動
- 業務効率化(Excelを「ランチャー」として利用)
テンプレ1:メモ帳を起動
Sub Open_Notepad()
Shell "notepad.exe", vbNormalFocus
End Sub
VB- ポイント:
- Windows標準のメモ帳を起動。
vbNormalFocusは通常表示で起動する指定。
テンプレ2:電卓を起動
Sub Open_Calc()
Shell "calc.exe", vbNormalFocus
End Sub
VB- ポイント:
- Windows標準の電卓を起動。
- 簡単な確認作業に便利。
テンプレ3:ブラウザを起動してWebページを開く
Sub Open_Browser()
Dim url As String
url = "https://www.microsoft.com"
Shell "cmd /c start " & url, vbHide
End Sub
VB- ポイント:
cmd /c start URLで既定ブラウザを起動。- ExcelからWebページを直接開ける。
テンプレ4:WordやPowerPointを起動
Sub Open_Word()
Shell "winword.exe", vbNormalFocus
End Sub
Sub Open_PowerPoint()
Shell "powerpnt.exe", vbNormalFocus
End Sub
VB- ポイント:
- Officeアプリは
winword.exe(Word)、powerpnt.exe(PowerPoint)。 - Excelから他のOfficeアプリを呼び出せる。
- Officeアプリは
テンプレ5:任意の外部アプリを起動(フルパス指定)
Sub Open_CustomApp()
Dim appPath As String
appPath = "C:\Program Files\Google\Chrome\Application\chrome.exe"
Shell """" & appPath & """", vbNormalFocus
End Sub
VB- ポイント:
- フルパスを指定すれば任意のアプリを起動可能。
- パスにスペースがある場合は
""""で囲む。
例題で練習
'例1:メモ帳を起動してメモを取る
'例2:電卓を起動して計算する
'例3:ブラウザでWebページを開く
'例4:WordやPowerPointを起動する
'例5:任意のアプリをフルパス指定で起動する
VB初心者向けポイント
- Shell関数が基本 →
"アプリ名.exe"を指定するだけで起動可能。 - vbNormalFocus / vbHide で表示方法を制御できる。
- フルパス指定で任意アプリを起動 → パスにスペースがある場合は注意。
- Excelを「ランチャー」として使える → 業務効率化に直結。
👉 この「外部連携 × 外部アプリ起動テンプレ」を覚えておけば、Excel VBAで よく使う外部アプリをワンクリックで起動し、業務を効率化する処理 を簡単に作成できます。
