いつもお世話になっております。
下記のことがしたいのですがどうやって良いのかがわからなくって困っております。
やりたいこと。
AブックとBブックが有るとします。(双方ともエクセルファイル)
エクセルのVBAで、Aブックのシート上のコマンドボタンを押すと
Bブックのシート上のコマンドボタンをクリックするという動きを
VBAでさせたいのですがどうしてもクリックさせることができません。
試したこと。
初めは、AのボタンをクリックするとBのボタンをセレクトして
SendKeysでENTERを送ってみたりしたのですがうまくいきませんでした。
何かやり方が有りましたら、お教えいただけませんでしょう。
宜しくお願いいたします。
No.3ベストアンサー
- 回答日時:
Privateスコープを変更しない場合、Application.Runメソッドを使う手もあります。
Application.Run "'C:\Book1.xls'!Sheet1.CommandButton1_Click"
※『Sheet1』の部分はシートモジュールのオブジェクト名になります。
ですが、Bブックのボタン_Clickの中味を標準モジュールに置いて、
AブックのボタンとBブックのボタンと、両方から実行できるようにしておくほうが良いような気もしますね。
(コマンドボタンが[フォーム]ボタンの事だったら、同じマクロを[マクロの登録]するだけの話?)
end-uさん、ご回答ありがとうございます。
Application.Run "'C:\Book1.xls'!Sheet1.CommandButton1_Click"で
無事できました!!
>ですが、Bブックのボタン_Clickの中味を標準モジュールに置いて、
>AブックのボタンとBブックのボタンと、両方から実行できるようにしておくほうが良いような気もしますね。
また、上記のご意見を参考に色々考えてみたいと思います。
ありがとうございました。
No.2
- 回答日時:
ブックAのボタンが押されたら
ブックBのボタンのコードが実行されるように
しておく。というのはダメなのかな?
記述的にはブックやシートの指定が面倒かも知れませんが
pofstarさん、ご回答ありがとうございます。
>ブックAのボタンが押されたら
>ブックBのボタンのコードが実行されるように
>しておく。というのはダメなのかな?
できる限り、ブックAではブックBを実行させるだけ
のソースにしたいと思っております。
しかし、pofstarさんのご意見も参考にして、
色々考えてみたいと思います。
ありがとうございました。
No.1
- 回答日時:
Book1のSheet1にコマンドボタン(CommandButton1)を作成
Private Sub CommandButton1_Click()
Msgbox "OK"
End Sub
ファイルをC:\Book1.xlsとして保存
Book2のSheet1にコマンドボタン(CommandButton1)を作成
Private Sub CommandButton1_Click()
Call Workbooks.Open("C:\Book1.xls").Sheets("Sheet1").CommandButton1_Click
End Sub
この状態でBook1のボタンをクリックすると"OK"のメッセージボックスが表示されますが、
Book2のボタンをクリックすると「オブジェクトは、このプロパティまたはメソッドをさぽーとしていません。」というエラーが発生します。
この状態を回避するために、Book1の
Private Sub CommandButton1_Click()
を
Public Sub CommandButton1_Click()
と変更して保存します。
これでBook2のコードから、Book1のCommandButton1_Clickというモジュールを実行できます。
Masa2072さん、ご回答ありがとうございます。
早速試してみました!!
Sheets("Sheet1").CommandButton1_Clickは以前挑戦して
駄目だったのですが、Publicにするだけで実行できるのでね。
勉強になりました!!
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
あなたの「必」の書き順を教えてください
ふだん、どういう書き順で「必」を書いていますか? みなさんの色んな書き順を知りたいです。 画像のA~Eを使って教えてください。
-
人生最悪の忘れ物
今までの人生での「最悪の忘れ物」を教えてください。 私の「最悪の忘れ物」は「財布」です。
-
モテ期を経験した方いらっしゃいますか?
一生に一度はモテ期があるといいますが、みなさんどうですか? いまがそう! という方も、「思い返せばこの頃だったなぁ」という方も、よかったら教えて下さい。
-
【選手権お題その3】この画像で一言【大喜利】
とあるワンシーンを切り取った画像。この画像で一言、お願いします!
-
「これいらなくない?」という慣習、教えてください
現代になって省略されてきたとはいえ、必要性のない慣習や風習、ありませんか?
-
Excel vbaで別ブックのコマンドボタンをクリック
Visual Basic(VBA)
-
メッセージボックスのOKボタンをVBAでクリックさせたい
Visual Basic(VBA)
-
別のユーザーフォームのコマンドボタンを押す
Visual Basic(VBA)
-
-
4
別シートのマクロを実行する方法
Excel(エクセル)
-
5
VBAのコマンドボタンの文字列の改行方法は?
Visual Basic(VBA)
-
6
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
7
エクセルVBAで、MsgBox やInputBox は、画面の中央以外に表示させたい。
Excel(エクセル)
-
8
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
9
プロシージャからイベントをコールする
Visual Basic(VBA)
-
10
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
11
VBA ポップアップが表示されたら常に「はい」を選択したい
Access(アクセス)
-
12
VBAにて別ワークブック上の実行したマクロのメッセージボックスを操作
Visual Basic(VBA)
-
13
Application.Runエラー(1004)
Excel(エクセル)
-
14
VBA エンターキーでイベントに入りたい。
PowerPoint(パワーポイント)
-
15
別シートのマクロボタンをマクロで実行させることができるかどうか
Excel(エクセル)
-
16
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
17
エクセルVBAでセルに入力したパスでブックを開く
Excel(エクセル)
-
18
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
19
UserForm1.Showでエラーになります。
工学
-
20
モジュールからフォームのボタンをクリックするには?
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~1/20】 追い込まれた犯人が咄嗟に言った一言とは?
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・【選手権お題その3】この画像で一言【大喜利】
- ・【お題】逆襲の桃太郎
- ・自分独自の健康法はある?
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・ちょっと先の未来クイズ第6問
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA シートのボタン名を変更し...
-
VBA(エクセル)で自動的にボタン...
-
C# マウス固有のキー(F1とか)を...
-
ASP.Net ラベルの内容をすぐに...
-
VB6.0でボタンの選択状態を解除...
-
excel シート上のボタンが動かない
-
VBA CommandButtonの文字ずれ
-
左クリックさせるプログラム
-
VBA ユーザーフォームラベルキ...
-
ユーザーフォームに別シートか...
-
アイコンとボタンの違い
-
ボタン上にビットマップ、アイ...
-
ボタン
-
わかりません
-
VBAで多数のプログラムを一つの...
-
VBAのボタンの位置が変わって困...
-
Access VBA でデータペーストを...
-
ダウンロードダイアログをVB...
-
C#でSendInputを使ったサンプル...
-
ボタンをマウスで押し続けたと...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA シートのボタン名を変更し...
-
VBA(エクセル)で自動的にボタン...
-
ユーザーフォームに別シートか...
-
フォームの再読み込み
-
VBA CommandButtonの文字ずれ
-
閉じると「+」になり開くと「-...
-
コマンドボタンやイメージにマ...
-
セルをマクロのボタンにしたい。
-
Excel VBA Application.caller...
-
VB.net でトグルボタンを実現し...
-
C#プログラムで、ボタンをショ...
-
VBAのボタンの位置が変わって困...
-
プロシージャからイベントをコ...
-
ボタンをマウスで押し続けたと...
-
Excel マクロ 閉じるボタン
-
VBAで多数のプログラムを一つの...
-
VBA IE ダウンロード ダイアロ...
-
Access VBA でデータペーストを...
-
バックスペース機能の作り方
-
[Excel VBA]コマンドボタンの入...
おすすめ情報