Excel (VBA)

Excel VBAに関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10 Pro : Microsoft 365)
いくつかのコマンドボタンを1つのボタンで対応する方法
投稿日時: 22/12/08 17:22:04
投稿者: takatada72

お世話になります。
 
4つほど、リストを出力するボタンがあります。
毎日、4つを同時に押しているのですが、1つで、4つ分のボタンを
押したことにできないか考えております。
※たまに、それぞれだけ出力させたいので、統合ではなく、5つの
ボタンを実現したいと思います。
 
CommandButton1 → リスト1を出力
CommandButton2 → リスト2を出力
CommandButton3 → リスト3を出力
CommandButton4 → リスト4を出力
 
CommandButton5 リスト1-4を出力 するようにしたいのです。
できれば、各CommandButtonのコードをCommandButton5に継ぎ足して
いくのではなく、マクロの登録のようにCall マクロ名のように
並べて実行できないか思っております。
 
簡単に記載できるコードは、ありますでしょうか
 
お忙しいとは思いますが宜しくお願い致します。

回答
投稿日時: 22/12/08 18:13:43
投稿者: WinArrow
投稿者のウェブサイトに移動

どこに設置したボタンですか?
 
>4つを同時に押している
同時に4つを押すことは、あり得ません。

回答
投稿日時: 22/12/08 18:14:05
投稿者: sk

引用:
4つほど、リストを出力するボタンがあります。

・ユーザーフォーム上に配置されたコマンドボタン
 
・ワークシート上に配置されたボタン(フォームコントロール)
 
・ワークシート上に配置されたコマンドボタン( ActiveX コントロール)
 
どれについての話をされているのでしょうか。
 
引用:
できれば、各CommandButtonのコードをCommandButton5に継ぎ足して
いくのではなく、マクロの登録のようにCall マクロ名のように
並べて実行できないか思っております。

( UserForm モジュール)
-------------------------------------------------------
Private Sub CommandButton5_Click()
 
    Call CommandButton1_Click
    Call CommandButton2_Click
    Call CommandButton3_Click
    Call CommandButton4_Click
 
End Sub
-------------------------------------------------------
 
引数を持たないイベントプロシージャであれば
一応こういう呼び出し方も出来ますが、
同じ処理を複数のプロシージャから呼び出すことがあるならば、
そういった共通する部分のコードをイベントプロシージャに直接書くのを
やめることから始められた方がよいのではないでしょうか。

投稿日時: 22/12/09 08:39:16
投稿者: takatada72

おはようございます。
 
ご確認をありがとうございました。
 
 WinArrowさん
4つ同時と言う表現を失礼しました。
各ボタンをクリックで押して行くのを1ボタンで1-4のボタンをそれぞれ実行できないかと
言う意味になります。
 
skさん
ごめんなさい、
設置場所は、ユーザーフォームに設置したボタンになります。
[ボタン1] [ボタン2] [ボタン3] [ボタン4] [ボタン5]のように設置しております。
 
示して頂いた方法にて確認をさせて頂きます。しばしお待ち下さい。
  Call CommandButton1_Click
    Call CommandButton2_Click
    Call CommandButton3_Click
    Call CommandButton4_Click

投稿日時: 22/12/09 08:44:47
投稿者: takatada72

skさん
 
ありがとうございました。
 
こちらの方法で実現できました。
 
  Call CommandButton1_Click
    Call CommandButton2_Click
    Call CommandButton3_Click
    Call CommandButton4_Click
 
クローズさせて頂きます。