Skill Note

平凡なエンジニアがメモ代わりにプログラミング, インフラ, ネットワークを書き綴るブログ

VBAで指定フォルダ内の全てのExcelファイル・シートを順番に開く方法

   

この記事では、VBAで指定フォルダ内の全てのExcelファイル・シートを順番に開く方法について記載します。

指定フォルダの選択は、ダイアログを表示して任意の場所を選択できるようにしています。

フォルダの指定

VBAでフォルダやファイルを選択するダイアログを表示するにはApplication.FileDialogオブジェクトを使用します。

Application.FileDialogに次の定数を渡すことでダイアログの種類を切り替えることができます。

定数名 内容
msoFileDialogFilePicker ファイルの場所を選択するダイアログ
msoFileDialogFolderPicker フォルダの場所を選択するダイアログ
msoFileDialogOpen ファイルを開くダイアログ
msoFileDialogSaveAs ファイルを保存するダイアログ

 

フォルダの場所を選択するダイアログを表示します。

ダイアログのタイトルや初期表示フォルダを指定します。

ダイアログで選択したフォルダのパスを取得します。
キャンセルボタンや×ボタンが押された時のために、ダイアログの戻り値を判定しています。

フォルダ内のファイルを順番に開く

フォルダ内のファイルを開くにはFileSystemObjectオブジェクトを使用してファイルシステムにアクセスします。

指定フォルダ内に存在するファイルを読み取り専用で順番に開きます。

特定のファイルのみ開きたい場合は、GetExtensionNameメソッドでファイルの拡張子を判定します

ファイル内のワークシートを順番に開く

開いたファイル内のワークシートを順番に処理します。

サンプルプログラム

指定フォルダ内の全てのExcelファイル・シートを順番に開くサンプルプログラムを記載します。

Google AdSense PC

Google AdSense PC

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

  関連記事

microsoft
[Windows]VBAからOracleのストアドプロシージャを実行する方法

VBAでOracleのストアドプロシージャを実行する方法について記載します。 VBAからOracleに接続する方法は以前の記事を参考にしてください。 ストアドプ …

microsoft
エクセルで円と銭の通貨単位を表示する

Excelで入力した数値に円と銭の単位を表示する方法を記載します。 2種類の表示方法がありますので、用途に応じて使い分けてください。 セルの書式設定で表示 セル …

microsoft
Excelのセル幅に合わせて縦横比を維持したまま画像サイズを自動調整する方法

VBAで画像を挿入することができますが、単純にセル幅に合わせて画像サイズを変更すると、縦長や横長の画像として挿入されます。 縦横比を維持したまま、画像を挿入する …

microsoft
既存パソコンを有効活用した、Windows 10への移行方法を考える

企業や個人用など数多くのパソコンで稼働しているOS、Windows 7のサポート期間が2020年1月14日に終了します。 サポート期間終了に向けてWindows …

microsoft
[Windows]共有フォルダへのアクセスログを取得する方法

VVAULT AUDITを使用したログ管理 Windowsでは監査ポリシーを設定することにより共有フォルダやファイルへのアクセスログを記録し、インベントビューア …

microsoft
Outlookでメール送信中になったまま送受信が終了しない場合

開封確認のメールが正常に送信されず、送信中のまま送受信が終了しない場合があります。 原因となる開封確認メールは送信トレイに存在しないため、削除することができませ …

microsoft
【パソコン不要】HDDのデータをSSDに丸ごとコピーして交換する方法

近頃はSSDの記憶容量の増加、価格の値下がりが続き、HDDとの容量・価格差も縮まり購入しやすい状況となっています。HDDからSSDに交換することで読込・書込速度 …

microsoft
Excel VBAでOracleのデータを参照するマスター検索機能を作成する

エクセルのVBAでOracleに保存されているマスタを検索する機能を作成する機会がありましたので、サンプルプログラムを記載します。 Oracleへの接続設定 V …

microsoft
[Windows]WSUSサーバの構築手順 3/6

Windows 2008 R2サーバにWSUSサーバを構築する IISのインストール [スタート]-[すべてのプログラム]-[管理ツール]-[サーバーマネージャ …

microsoft
VBAで形式を指定して日付を取得する

VBAで西暦や和暦の日付形式に変換するには「FORMAT」関数に引数を指定することで意図した日付形式に変換することができます。 日付を表示 Date関数で今日の …