Workbook オブジェクト (Excel)

Microsoft Excel ブックを表します。

注釈

Workbook オブジェクトは Workbooks コレクションのメンバーです。 Workbooks コレクションには、現在開かれているすべての Workbook オブジェクトが含まれています。

Application オブジェクトの ThisWorkbook プロパティは、Visual Basic コードが実行されているブックを返します。 ほとんどの場合、これは作業中のブックと同じです。 ただし、Visual Basic コードがアドインの一部である場合、 ThisWorkbook プロパティはアクティブなブックを返しません。 この場合の作業中のブックはアドインを呼び出しているブックですが、ThisWorkbook プロパティはアドイン ブックを返します。

Visual Basic コードからアドインを作成する場合は、 ThisWorkbook プロパティを使用して、アドインにコンパイルするブックで実行する必要があるステートメントを修飾する必要があります。

1 つの Workbook オブジェクトを返すには、Workbooks (index) を使用します。index はブック名またはインデックス番号です。 次の例では、ブック 1 をアクティブにします。

Workbooks(1).Activate

データ系列のインデックス番号は、データ系列がグラフに追加された順序と対応します。 Workbooks(1) は最初に作成されたブックで Workbooks(Workbooks.Count) 、最後に作成されたブックです。 ブックをアクティブ化しても、そのインデックス番号は変更されません。 非表示になっている場合でも、すべてのブックはインデックス数に含まれます。

Name プロパティはブック名を返します。 このプロパティを使用して名前を設定することはできません。名前を変更する必要がある場合は、 SaveAs メソッドを使用してブックを別の名前で保存します。

次の例では、Cogs.xls という名前のブックで Sheet1 をアクティブにします (ブックは既に Microsoft Excel で開いている必要があります)。

Workbooks("Cogs.xls").Worksheets("Sheet1").Activate

Application オブジェクトの ActiveWorkbook プロパティは、現在アクティブなブックを返します。 次の使用例は、作業中のブックの作成者の名前を設定します。

ActiveWorkbook.Author = "Jean Selva"

次の使用例は、指定したメール アドレスと件名を使用して、作業中のブックからワークシート タブを電子メールで送信します。 このコードを実行するには、アクティブなワークシートのセル A1 に電子メールアドレス、セル B1 に件名、セル C1 に送信するワークシート名を含める必要があります。

Sub SendTab()
   'Declare and initialize your variables, and turn off screen updating.
   Dim wks As Worksheet
   Application.ScreenUpdating = False
   Set wks = ActiveSheet

   'Copy the target worksheet, specified in cell C1, to the clipboard.
   Worksheets(Range("C1").Value).Copy

   'Send the content in the clipboard to the email account specified in cell A1,
   'using the subject line specified in cell B1.
   ActiveWorkbook.SendMail wks.Range("A1").Value, wks.Range("B1").Value

   'Do not save changes, and turn screen updating back on.
   ActiveWorkbook.Close savechanges:=False
   Application.ScreenUpdating = True
End Sub

イベント

メソッド

プロパティ

関連項目

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。