住所録マクロの改修過程で必要になった機能。今回の改修では、先に「住所録マクロ」を開く。そこで、住所録マクロを開く「先に自分の住所録を開いていた」ことを考慮する必要があり、試行錯誤していた。
Sub Auto_Open() Dim macroBookName As String, openBookName As String macroBookName = ThisWorkbook.Name For Each VARAns In Workbooks openBookName = VARAns.Name If openBookName <> macroBookName Then MsgBox Workbooks(openBookName).FullName End If Next frm住所録マクロ.Show End Sub
【ポイント】
- VARAns はバリアント型の変数。
- For Each 〜 Next で、Workbooks コレクションを取得する。
- 開いているブックが新規文書,例えば Book1 の場合、FullName は Name と同じになる。