top of page

​タグ一覧

配列処理(76)

シート・セル操作(34)

階層化フォーム(33)

ファイル操作(31)

開発事例(26)

図形操作(24)

設計思想(14)

講座実施報告(12)

開発効率化(10)

ユーザーフォーム(10)

コード自動生成(10)

ココナラ(9)

数学(9)

文字列操作(8)

イベントプロシージャ(7)

GAS(7)

Webアプリ(6)

副業(5)

アニメーション(5)

技術解説(4)

その他(5)

イミディエイトウィンドウ(4)

OneDrive(4)

Googleスプレッドシート(4)

クリップボード(4)

条件付き書式(4)

介護・福祉(4)

小説(3)

HTML(3)

JavaScript(3)

公開ツール(3)

Enum(2)

PDF(2)

フリーランス(2)

リスキリング(2)

Outlook(2)

Discord(2)

シフト表(2)

LookerStudio(2)

日報(2)

カレンダー(2)

パズル(2)

小ネタ(2)

コード解説(2)

クラスモジュール(2)

Antigravity(2)

デスクトップアプリ(2)

スクレイピング(1)

スプレッドシート(1)

QRコード(1)

実行予約(1)

給与計算(1)

VBA不使用(1)

超勉強会(1)

溶接ロボット(1)

楽天市場(1)

経理(1)

医療(1)

文書作成(1)

発注書(1)

WebAPI(1)

学校(1)

CAD(1)

PowerShell(1)

python(1)

GetFiles|フォルダ内ファイル一覧を拡張子指定で取得 | Excel VBA

2024年1月15日
読了時間: 2分

更新日:1月4日

GetFiles|フォルダ内ファイルを拡張子指定で一覧取得 | Excel VBA

<概要 (ファイル一覧 VBA)>

GetFilesは、指定したフォルダ内に存在するファイルを一覧で取得するためのExcel VBA用汎用プロシージャです(ファイル一覧 VBA)。

Microsoft Scripting Runtime(FileSystemObject)を利用し、フォルダ内のファイルを高速かつ安定して取得できます。


本プロシージャの特徴は、可変長引数(ParamArray)で拡張子を指定できる点にあります。

特定の拡張子(例:xlsx、csv、jpg など)のみを抽出することも、拡張子指定なしですべてのファイルを取得することも可能です。


戻り値はファイル名の一次元配列で、対象ファイルが存在しない場合は Empty を返します。

そのため、後続処理では IsEmpty を用いた安全な分岐が可能です。


「フォルダ内ファイル取得」をスマートに実装したい場合に、そのまま再利用できる実務向けの汎用プロシージャです。


<用途>


  • フォルダ内のファイル一覧を取得する



<プロシージャ紹介>


Public Function GetFiles(FolderPath As String, ParamArray Extensions() As Variant) As Variant


名前: GetFiles /Functionプロシージャ

説明: フォルダ内のファイルを一覧で取得する


引数 FolderPath・・・検索対象のフォルダパス

Extensions・・・取得対象の拡張子、可変長引数配列で入力


<実行例>


 次のようなコードを用意します。


 対象のフォルダのフォルダパスは「C:\Test\GetFiles用」を指定していますが、テスト用としてこのフォルダには次のようなファイルを用意しています。


取得するファイル一覧の例
取得するファイル一覧の例

 

 実行後にローカルウィンドウを確認して各変数「FileList_txt」「FileList_bmp」「FileList_txt_bpm」の中身を確認すると、引数で指定した拡張子のファイルのファイル名が一次元配列に格納されているのが確認できます。



ファイル一覧の取得結果
ファイル一覧の取得結果のローカルウィンドウでの確認

<サンプルファイル>




<コード>


 Gist


Excel VBAによる業務自動化・ツール開発をご検討の方へ

​"脱Excel"の前に、現状のExcelの潜在能力を120%発揮してみませんか?

softex-celwareロゴ 透過 横長.png

​インボイス登録番号:T5810983887134

  • Facebook
  • Twitter
  • YouTube

©2023 softex-celware。Wix.com で作成されました。

bottom of page