Excel VBA入門 | FileSystemObjectオブジェクトモデル(概要)

公開日:2017年5月26日 更新日:2017年6月8日

FileSystemObjectオブジェクト(モデル)は、Windowsスクリプトテクノロジの1つであるScriptランタイムに属したオブジェクトです(Excel VBA上ではScriptingのメンバに位置づけされています)。

ここでは、FileSystemObjectオブジェクトの概要について解説します。

最新のゲームランキング

1時間で更新 Amazon ゲームの新着アイテムや予約商品のベストセラー

最新のゲームランキング

1時間で更新 Amazon ゲームの新着アイテムや予約商品のベストセラー

1.FileSystemObjectオブジェクトの位置付け

上記に記載した通り、Windowsスクリプトテクノロジの1つであるScriptランタイムに属するオブジェクトです。

Windowsスクリプトテクノロジとは、Microsoft APIのリファレンスである「MSDN ライブラリ」の中でWEB開発の1項目に該当します(同項目としてJavaScriptなどがあります)。

Scriptランタイムとは、そのWindowsスクリプトテクノロジの1項目であり、同項目としては、VBScriptやWindows Script Hostなどがあります。

そしてそのScriptランタイムの1オブジェクトとして、FileSystemObjectオブジェクトが存在するということになります。

Excel VBA FileSystemObject

2.使用目的

FileSystemObjectオブジェクトは、ドライブやフォルダおよびファイルを操作する場合に使用します。

3.使い方

3-1.参照設定

上述の通り、FileSystemObjectオブジェクトはScriptingに属し、VBAの枠外に存在するためそのままではVBA上で使用することができません。

使用するには「参照設定」を行います。

VBE上のメニューより「ツール→参照設定」を選択。
一覧から「Microsoft Scripting Runtime」にチェックを入れてOKボタンを押します。

3-2.事前バインディングによる参照

使用時には次の通り宣言し、オブジェクトを変数に格納します。

 Dim FSO As FileSystemObject Set FSO = New FileSystemObject '変数FSOは例示。自由に設定してください。 

または次のように1行で表すこともできます。

 Dim FSO As New FileSystemObject '変数FSOは例示。自由に設定してください。 

3-3.実行時バインディングによる参照

事前バインディングの代わりに次の実行時バインディングによる参照でも、FileSystemObjectオブジェクトを使用することができます。

 Dim FSO As Object '変数FSOは例示。自由に設定してください。 Set FSO = CreateObject("Scripting.FileSystemObject") 

4.実行時バインディング使用時の注意

FileSystemObjectオブジェクトのみを使用する場合には、実行時バインディングでは参照設定を必要としません(事前バインディングでは必ず必要)。しかし、FileSystemObjectオブジェクト系統に属するオブジェクト(Folderオブジェクト、Fileオブジェクトなど)を使用する場合には実行時バインディングであっても参照設定が必要になります。

以上から、事前バインディング、実行時バインディングどちらの方法を使用する場合でも参照設定を行っておきましょう

Amazon Kindle Unlimited

10冊まで同時に読み放題の電子書籍サービス(10万タイトル以上)。

PC・ITカテゴリーの対象数は4,000以上。

スキル、ノウハウ吸収や話題作りにと、ライフ・クオリティを高めてくれます。

関連記事

Amazonタイムセール

注目のタイムセール商品やおすすめキャンペーン、お買い得商品が満載

Amazonタイムセール

注目のタイムセール商品やおすすめキャンペーン、お買い得商品が満載

Topへ戻る