Home » FSO・FileSystemObjectの使い方 » Filesコレクションに含まれる単独オブジェクトFileをローカルウィンドウで確認する

Filesコレクションに含まれる単独オブジェクトFileをローカルウィンドウで確認する

対象:Excel2010, Excel2013, Windows版Excel2016

Filesコレクションに含まれる単独オブジェクトFileをローカルウィンドウで確認する

アクセスログを眺めていて、
「excel vba filesystemobject files内のファイル名」
という検索キーワードに気づきました。

Filesコレクションオブジェクトに含まれる、各ファイルの名前を取得するコードを探していらしたのでしょうか。

[スポンサードリンク]

単純にマクロが欲しいだけならば、ご紹介済みのFileSystemObjectを使ってファイル名一覧を作成するExcelマクロを、ご参照ください。

FileSystemObjectについて理解を深めたいなら、ローカルウィンドウや、オブジェクトブラウザーを使って、オブジェクトについて確認しておくことをおすすめします。

FilesコレクションとFileオブジェクトを理解するためのサンプルマクロ

参照設定済みの環境で、以下のSubプロシージャをショートカットキー[F5]で実行すると、「c:\tmep」フォルダー内のファイル名が、イミディエイトウィンドウに出力されます。

Sub ファイル名一覧をイミディエイトウィンドウに出力する()
 Const PATH_ = "c:\temp"

 Dim fso As Scripting.FileSystemObject
 Set fso = New Scripting.FileSystemObject

 Dim fs As Scripting.Files
 Set fs = fso.GetFolder(PATH_).Files

 Dim f As Scripting.File
 For Each f In fs
  Debug.Print f.Name
 Next f
End Sub

ローカルウィンドウでオブジェクト変数の中身を確認しつつオブジェクトのイメージを深めましょう

FileSystemObjectについて理解を深めたいなら、上記のプロシージャをショートカットキー[F8]でステップ実行しながら、ローカルウィンドウでオブジェクト変数の中身を確認しましょう。

以下のように、「c:\temp」フォルダーにExcelブックが2つ存在する状態で、

Filesコレクションに含まれる単独オブジェクトFileをローカルウィンドウで確認する

ステップ実行してみます。

オブジェクト変数fsへの代入が行われるまでは、下図のようにNothingの状態で、

Filesコレクションに含まれる単独オブジェクトFileをローカルウィンドウで確認する

代入ステートメント
  Set fs = fso.GetFolder(PATH_).Files
が実行されると、オブジェクト変数fsにFilesコレクションオブジェクトがセットされた様子を確認できます。

Filesコレクションに含まれる単独オブジェクトFileをローカルウィンドウで確認する

更にFor Each~Nextループに入ると、Filesコレクションオブジェクトに含まれる単独オブジェクトFileの中身を見られるようになります。

Filesコレクションに含まれる単独オブジェクトFileをローカルウィンドウで確認する

FilesコレクションオブジェクトとFileオブジェクトが、どのような情報を抱えているのかを確認して、どのようなオブジェクトなのかイメージを深めましょう。

また、オブジェクトブラウザーで、Filesコレクションオブジェクトと、Fileオブジェクトがどのようなプロパティ・メソッドを持っているかも確認しましょう。

Filesコレクションに含まれる単独オブジェクトFileをローカルウィンドウで確認する

[スポンサードリンク]

Home » FSO・FileSystemObjectの使い方 » Filesコレクションに含まれる単独オブジェクトFileをローカルウィンドウで確認する

「FSO・FileSystemObjectの使い方」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.