CreateObject関数 解説(Excel VBA)

Excel VBAのCreateObject関数の使い方

CreateObject関数は、指定されたプログラムオブジェクトを作成するVBAの組み込み関数です。この関数を使用すると、VBAから他のアプリケーション(例えばWordやOutlook)のオブジェクトを生成して制御することができます。

CreateObject関数の基本的な構文

Set objectVariable = CreateObject(serverName.typeName [, location])

パラメータ

  • serverName.typeName: 作成するオブジェクトのサーバー名と型名を指定します。この値は必須です。
  • location: オブジェクトを作成するネットワークパスを指定します。この値はオプションです。

サンプルコード

以下に簡単なSubプロシージャの形式でCreateObject関数の使い方を示します。

Sub CreateWordApp()
    ' Wordアプリケーションのオブジェクトを作成
    Dim WordApp As Object
    Set WordApp = CreateObject("Word.Application")
    ' Wordを表示
    WordApp.Visible = True
    ' 新しいドキュメントを作成
    WordApp.Documents.Add
    ' ドキュメントにテキストを追加
    WordApp.ActiveDocument.Content.Text = "これはExcel VBAから作成したWordドキュメントです。"
End Sub

このサンプルコードでは、まずWordのApplicationオブジェクトを作成しています。その後、Wordアプリケーションを表示し、新しいドキュメントを作成します。最後に、作成したドキュメントにテキストを追加しています。

CreateObject関数は、Excel VBAから他のアプリケーションを制御するときに非常に強力なツールとなります。ただし、アプリケーション間の操作は複雑なため、エラーハンドリングを適切に行うことが重要です。