私は2つの異なるワークブックから抽出する検索エンジンを持っています。1つは検索エンジンが含まれているので簡単ですが、もう1つは別のものです。
一方が開かれた場合にもう一方が開くように、それらをリンクする方法があるかどうか疑問に思っています。これらはウィキに配置され、両方をダウンロードする必要があります。両方を同じファイルに入れて、同時に別々に保つ方法はありますか?
答えはノーだと思いますが、頭を選ぶのは害はありません;)
最も実用的なアプローチは、各ファイルにコードを配置して、
- check if the other file eas already open
- if not then either
- open the other file (assuming the same location) if not already open
- report the file as missing
これを行うにThisWorkbook
は、2 つのワークブックのそれぞれのモジュールに次のようなコードを配置します。
コードはイベントを無効にして、新しく開いたファイルが最初のファイルを再度開こうとするのを回避することに注意してください (ただし、コードはこれを処理します)。
strFil
2 番目の本で同じコードを使用しますが、他の本の名前の変数を更新します。
File#2
Private Sub Workbook_Open()
'This File is File02.xlsm
'Other file is File01.xlsm
Dim strFile1 As String
Dim wb As Workbook
strFile = "File01.xlsm"
On Error Resume Next
Set wb = Workbooks(strFile)
On Error GoTo 0
'if file is already open then leave sun
If wb Is Nothing Then
With Application
.ScreenUpdating = False
.DisplayAlerts = False
.EnableEvents = False
On Error Resume Next
Set wb = Workbooks.Open(ThisWorkbook.Path & "\" & strFile)
On Error GoTo 0
.ScreenUpdating = True
.DisplayAlerts = True
.EnableEvents = True
End With
End If
'file not present
If wb Is Nothing Then MsgBox strFile & " not present", vbCritical
End Sub