| 9. ブックの操作−ブックオブジェクトの参照 |
![]() |
Excelのブックも1つのオブジェクトとしてVBAから操作できるようになっています。 |
| @
ブックをオブジェクトとして参照する |
書式 | 使用例 |
| ブックは、単体ではWorkbookオブジェクトとして操作しますが、Excelは複数のブックを同時に開いて操作できますので、Workbooksコレクションにも所属します。したがって、単体のブックを操作する場合は、ApplicationオブジェクトのWorkbooksプロパティを使用し、引数にブック名を記述して指定します。この時、ブックのファイル名は拡張子「xls」まで記述します。 |
Application.Workbooks("ブック名")
*【Application】は省略可
【属性】 プロパティ
<記述例> |
<使用例 ブック「MyData1.xls」をアクティブにする> Workbooks("MyData1.xls").Activate |
| A アクティブなブックの把握 | 書式 | 使用例 |
| 複数のブックを開いている場合、現在アクティブなブックを把握するには、ApplicationオブジェクトのActiveWorkbookプロパティを使用します。 |
Application.ActiveWorkbook
*【Application】は省略可
【属性】 プロパティ
<記述例> |
<使用例 アクティブなブックを閉じる> ActiveWorkbook.Close |
| B ブックをアクティブにする | 書式 | 使用例 |
|
現在開いているブックの中で、特定のブックをアクティブにしたい場合は、WorkbookオブジェクトのActivateメソッドを使用します。 対象オブジェクトに、アクティブにしたいブック名をWorkbooksプロパティで指定し、メソッドを実行すると、そのブックがもっとも手前に表示されます。 |
Object.Activate
【属性】 メソッド
<記述例> |
<使用例 ブック「Book1.xls」をアクティブにする> Workbooks("Book1.xls").Activate |
| C 自分自身を把握する | 書式 | 使用例 |
|
自分自身を参照するプロパティで、現在実行中のマクロコードが記述されているブックを返します。 アドインなどは、ActiveWorkbookプロパティで自分を参照することができない場合などは、このプロパティを使用します。 |
Application.ThisWorkbook
【属性】 メソッド
<記述例>
|
<使用例 マクロ実行中のブック名を表示する> |
| D ブックのパス名を取得する | 書式 | 使用例 |
|
現在開いているブックのパス名を取得するには、WorkbookオブジェクトのPathプロパティを使用します。 対象オブジェクトにActiveWorkbookプロパティを使用すれば、現在アクティブなブックのパスを、Workbooksプロパティでブック名を指定すればそのブックが保存されているフォルダのパス名を表示します。 Pathプロパティには、ブックが保存されているドライブ名とフォルダが「:」と「\」記号で区切られて、文字列として格納されます。また、フォルダの中に更にフォルダがある場合は、「\」記号で下層のフォルダを結合して表示されます。 次のパス名は、ドライブ「F」にあるフォルダ「GENKOU」の、更に3階層下のフォルダに格納されていることを示しています。 <例> F:\GENKOU\VB Magazine\1999\99-04
|
Object.Path
【属性】 プロパティ
<記述例> |
<使用例
現在アクティブなブックのパス名を取得する>
<使用例 開いているブック「MyData1.xls」が保存されているパスの取得>
|