OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

2つのEXCELのブック間でのマクロの呼び出し方

  • 困ってます
  • 質問No.180934
  • 閲覧数91
  • ありがとう数0
  • 気になる数0
  • 回答数1
  • コメント数0

お世話になります、

あるExcelのブック「Book1」でセルが選択された
イベントで別のブック「Book2」に登録されている
マクロ「Macro(str,number)」を呼び出したいのですが
どのようにすればいいでしょうか?

よろしくお願いします。
具体的なソース等がありましたらよろしくお願いします。
通報する
  • 回答数1
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.1
レベル13

ベストアンサー率 68% (791/1163)

>セルが選択されたイベントで
がどのセルでもいいのか不明ですが、例えば、
Book1のSheet1のセル範囲A1:B2をクリックしたら、Book2のSheet1のBook2_Macroを呼ぶ例です。
Book2のMacroは適当な例です。引数も適当です。

ご参考に。(似たような質問がありました?)


Book1のSheet1のマクロ

' *** A1:B2のセル範囲を選択したらSheet2のマクロが動く例 ***
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

  If Not Application.Intersect(Target, Range("A1:B2")) Is Nothing Then

    'A1:B2のセル範囲を選択したら動きます
    Workbooks("Book2").Worksheets("Sheet1").Activate
    ActiveSheet.Book2_Macro "AAA", 123 '引数は適当です

  End If

End Sub

Book2のSheet1のマクロ

' メッセージを出すだけの例
Sub Book2_Macro(str As String, number As Long)
  Dim myMsg As String 'メッセージ

  myMsg = "Book1 の Sheet1 から" & vbCrLf
  myMsg = myMsg & "文字:" & str & vbCrLf
  myMsg = myMsg & "数値:" & number & vbCrLf & " で呼び出されました。"

  MsgBox myMsg

End Sub
-PR-
-PR-
このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このやり方知ってる!同じこと困ったことある。経験を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ