【穴埋めお題】恐竜の新説

こんばんは、エクセル2010を使っていて、別シートからマクロを実行したいと思っていますが、どうも上手く行きません。

やりたいのは Sheet12のマクロの実行後、Sheet9 の 統合シート.xlsm!Sheet9_ボタン1_Click と言うボタンクリックのマクロを実行させたいと思います。

詳しい方、教えて頂けませんでしょうか、よろしくお願いいたします。

■ 試してみた
sheet12のマクロのコード

Dim vR As Variant
Dim vA As Variant
Dim iRow As Long, iCol As Long
Dim i As Long, j As Long
Const CROW As Long = 11
Const CFIGW As Long = 6
Const CFIGNEXT As Long = CFIGW + 1
         ~
         ~

Sheets("sheet9").Select
ボタン1_Click

Sheets("sheet5").Select

Dim a As Integer
a = Cells(1, 1).Value
a = a + 1
Cells(1, 1) = a
MsgBox a

Sheets("sheet9").Select

end sub

A 回答 (3件)

別シートのマクロという概念が少し違う気がします。



Sheet9にボタン1を配置して、そのボタンに登録してあるマクロは標準モジュールにあると思います。
この標準モジュールにあるものを、Sheet9のボタン1に登録してあるだけであって、「シート9のマクロ」
というものではないのでは。

仮にその名前が「Sheet9_ボタン1_Click」と言う名前なんだったら、

Call Sheet9_ボタン1_Click

で動くと思います。
    • good
    • 1
この回答へのお礼

回答ありがとうございます。

Call Sheet9_ボタン1_Click を私が提示した位置では動かなかったのですが、最下行にもって行ったら動作しました。

ありがとうございました。

お礼日時:2015/08/02 20:28

たぶん、フォームコントロールのボタンでしょうから、私の知っている範囲なら、このようにします。

名称があるなら、Buttonsの中に名前を入れてください。Shapesでも可。コードが別に書かれているかどうかではなく、そのオブジェクトにマクロ登録しているという前提です。

Sub Test1()
 'フォームボタン
 Run Worksheets("Sheet9").Buttons(1).OnAction
End Sub

'ちなみに、ActiveX 側はこちら
Sub Test2()
 'ActiveX コントロール・ボタン
 Worksheets("Sheet9").CommandButton1.Value = True
End Sub
    • good
    • 0

別のシート?


良くわかりませんが
ボタン1_Click

Application.Run "統合シート.xlsm!Sheet9_ボタン1"
のことでしょうか。
    • good
    • 4
この回答へのお礼

回答ありがとうございます。

Call Sheet9_ボタン1_Click を私が提示した位置では動かなかったのですが、最下行にもって行ったら動作しました。

ありがとうございました。

お礼日時:2015/08/02 20:28

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報

このQ&Aを見た人がよく見るQ&A