[オブジェクト] Workbook

Excelのブックを指します。ブックを複数開かないで、ただ一つのブックを操作するのであれば、Workbook オブジェクトは省略されることが多いのですが、複数のブックを同時に開いて扱う場合は省略できません。省略するとアクティブになっているブックが処理されます。Workbook オブジェクトの指定の方法がいろいろあるので、説明しましょう。

book1.xls と book2.xls を開いていて、

book1.xls がアクティブな場合
book1.xls に記述された Workbooks("book1.xls") → book1.xls を指す
Workbooks("book2.xls") → book2.xls を指す
ThisWorkbook → book1.xls を指す
ActiveWorkbook、または省略 → book1.xls を指す
book2.xls に記述された Workbooks("book1.xls") → book1.xls を指す
Workbooks("book2.xls") → book2.xls を指す
ThisWorkbook → book2.xls を指す
ActiveWorkbook、または省略 → book1.xls を指す

book2.xls がアクティブな場合
book1.xls に記述された Workbooks("book1.xls") → book1.xls を指す
Workbooks("book2.xls") → book2.xls を指す
ThisWorkbook → book1.xls を指す
ActiveWorkbook、または省略 → book2.xls を指す
book2.xls に記述された Workbooks("book1.xls") → book1.xls を指す
Workbooks("book2.xls") → book2.xls を指す
ThisWorkbook → book2.xls を指す
ActiveWorkbook、または省略 → book2.xls を指す

ThisWorkbook は、ThisWorkbook と記述しているモジュールを格納したブックを指します。省略したり、ActiveWorkbook を記述した場合はアクティブなブックを表します。

Sub Sample1()
  With ThisWorkbook
    MsgBox "このブックの名前 : " & .Name & vbCr & "このブックのフルネーム : " & .FullName
  End With
End Sub


ThisWorkbook や ActiveWorkbook の扱いに慣れないうちは、Workbooks("book1.xls") のようにブックの名前を直接記述した方が良いでしょう。