T0000017_参照設定とCreateObjectの一覧

参照設定とCreateObjectの一覧 トラブルシューティング

このページについて

参照設定はExcelVBA(マクロ)でライブラリを使用するための簡単な方法です。参照設定を前提としてコードを記述してしまうと、コードを移植するときにその都度新しいブックで参照設定が必要になります。参照設定を忘れると以下のようなコンパイルエラーが発生します。このページでは参照設定を使用したアーリーバインディング記法と参照設定を省略できるレイトバインディング記法についてコピペできるサンプルコードを掲載しています。適宜対象は増減させます。

凡例

オブジェクトの概要

当該オブジェクトの使用場面や、使用する目的について簡単に記述します。

設定名

区分名称
ProgIDCreateObjectに渡す文字列を記載します。
参照設定参照設定の一覧での表示名を記載します。

サンプルコード(クリックでコピー)

アーリーバインディング記法(参照設定)

Private Sub Test_EarlyBinding()
Dim dic As Dictionary
Set dic = New Dictionary
End Sub

レイトバインディング記法(CreateObject)

Private Sub Test_LateBinding()
Dim dic As Object
Set dic = CreateObject("Scripting.Dictionary")
End Sub

FileSystemObject(ファイルシステムオブジェクト)

オブジェクトの概要

ファイルシステムオブジェクトはファイルやフォルダの操作をすることができます。存在確認や、新規作成、移動、削除など。

設定名

区分名称
ProgIDScripting.FileSystemObject
参照設定Microsoft Scripting Runtime

サンプルコード(クリックでコピー)

アーリーバインディング記法(参照設定)

Private Sub Test_EarlyFileSystemObject()
Dim fso As Scripting.FileSystemObject
Set fso = New Scripting.FileSystemObject
End Sub

レイトバインディング記法(CreateObject)

Private Sub Test_LateFileSystemObject()
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
End Sub

Dictionary(ディクショナリー:連想配列)

オブジェクトの概要

連想配列とは何かという説明はここではしませんが、辞書型やハッシュ型とも呼ばれるデータを格納して取り扱うオブジェクトです。

設定名

区分名称
ProgIDScripting.Dictionary
参照設定Microsoft Scripting Runtime

サンプルコード(クリックでコピー)

アーリーバインディング記法(参照設定)

Private Sub Test_EarlyDictionary()
Dim dic As Scripting.FileSystemObject
Set dic = New Scripting.FileSystemObject
End Sub

レイトバインディング記法(CreateObject)

Private Sub Test_LateDictionary()
Dim dic As Object
Set dic = CreateObject("Scripting.Dictionary")
End Sub

wsh(WindowsScriptHostのシェルオブジェクト)

オブジェクトの概要

wsh.Runなどでいろんなことを実行できます。コマンドの実行や、アプリケーションの起動など。他にもデスクトップパスやスタートアップパスを取得するといったことにも使えます。

設定名

区分名称
ProgIDWScript.Shell
参照設定Windows Script Host Object Model

サンプルコード(クリックでコピー)

アーリーバインディング記法(参照設定)

Private Sub Test_EarlyWsh()
Dim wsh As IWshRuntimeLibrary.WshShell
Set wsh = New IWshRuntimeLibrary.WshShell
End Sub

レイトバインディング記法(CreateObject)

Private Sub Test_LateWsh()
Dim wsh As Object
Set wsh = CreateObject("WScript.Shell")
End Sub

ADODBストリームオブジェクト

オブジェクトの概要

テキストデータの読み書きによく使用します。

設定名

区分名称
ProgIDADODB.Stream
参照設定Microsoft ActiveX Data Objects x.x Library

「x.x」は一番大きい数値を選択します

サンプルコード(クリックでコピー)

アーリーバインディング記法(参照設定)

Private Sub Test_EarlyAdoStream()
Dim adoStream As ADODB.Stream
Set adoStream = New ADODB.Stream
End Sub

レイトバインディング記法(CreateObject)

Private Sub Test_LateAdoStream()
Dim adoStream As Object
Set adoStream = CreateObject("ADODB.Stream")
End Sub

あなたの問題は解決しましたか?

何事においてもすべての人にとって有効な解決策を提示することは難しいです。このページを読んでもあなたの問題は解決しなかったかもしれません。そのまま孤独な戦いに戻る前にコメント欄、もしくは問い合わせから遠慮なくご質問をお寄せください。(私が気づけば)1営業日内に反応します。

Comment