ThisComponent オブジェクトがある。
話しが脱線してExcel の話題になってしまうが、
ThisWorkbook と ActiveWorkbook
の違いについて記す(自分の為にも)。知識は厳密である方が望ましいので。
二つのブック Book1.xls と Book2.xls を用意し、Book1.xls に下記プロシージャ
を記述する :
Sub Test1()
MsgBox "ThisWorkbookの名前は : " & ThisWorkbook.Name & vbCrLf & _
"ActiveWorkbookの名前は : " & ActiveWorkbook.Name
End Sub
Book1.xls を選択(アクティブ)して状態で Test1 プロシージャを実行すると
結果は、
これに対して、Book2.xls を選択した状態で Test1 プロシージャを実行
すると、メッセージボックスに表示される内容が下記の通り、微妙に
異なる :
ThisWorkbook については、どちらのブックがアクティブかに関わらず
Name プロパティは「Book1」を返すが、ActiveWorkbook については
選択されているブックによって Name プロパティの値は変わってくる。
以上のことからわかるように、ThisWorkbook と ActiveWorkbook の
違いは下記の通りである :
ThisWorkbook : 実行しているプロシージャが記述されているブック
ActiveWorkbook : 実行されているプロシージャがどのブックに記述
されているかに関わらず、アクティブ(選択されて
いる)なブック
以上の記述は下記資料を参考にさせて頂いた :
EXCEL-LENCE web
0 件のコメント:
コメントを投稿