Note: The other languages of the website are Google-translated. Back to English

Excelのドロップダウンリストから選択した値に基づいてマクロを実行するにはどうすればよいですか?

コマンドボタンをクリックしてマクロを実行することはExcelの一般的なタスクですが、ドロップダウンリストから選択した値に基づいてマクロコードを実行しようとしたことがありますか? つまり、ドロップダウンリストからXNUMXつの項目を選択すると、特定のマクロが一度にトリガーされます。 この記事では、この仕事を解決するのに役立つコードを紹介します。

ドロップダウンリストから選択した値に基づいて、VBAコードでマクロを実行します


矢印青い右バブル ドロップダウンリストから選択した値に基づいて、VBAコードでマクロを実行します

このタスクを完了する直接的な方法はありませんが、次のVBAコードが役立ちます。次のようにしてください。

1。 まず、必要に応じてドロップダウンリストを作成します。スクリーンショットを参照してください。

ドロップダウン1からマクロを実行するドキュメント

2。 次に、使用するドロップダウンが含まれているシートタブを右クリックし、を選択します。 コードを表示 コンテキストメニューから、開いた状態で アプリケーション用のMicrosoftVisual Basic ウィンドウで、次のコードをコピーして空のモジュールに貼り付けます。

VBAコード:ドロップダウンリストから選択した値に基づいてマクロを実行します。

Private Sub Worksheet_Change(ByVal Target As Range)
	If Not Intersect(Target, Range("E1")) Is Nothing Then
	    Select Case Range("E1")
	        Case "Insert Blank rows": Macro1
	        Case "Hide All Sheets": Macro2
            Case "Convert to Date": Macro3
	    End Select
	End If
	End Sub

ドロップダウン2からマクロを実行するドキュメント

注意:上記のコードでは、 E1 セルにドロップダウンリストが含まれている場合は、マクロ名とドロップダウンリストの値を必要に応じて変更します。

3。 次に、このコードウィンドウを保存して閉じます。ここで、ドロップダウンリストから[空白行の挿入]項目を選択すると、Macro1がトリガーされます。


関連記事:

Excelでセル値が変更されたときにマクロを実行するにはどうすればよいですか?

Excelでセル値に基づいてマクロを実行するにはどうすればよいですか?

Excelで印刷する前にマクロを自動的に実行するにはどうすればよいですか?

Excelでハイパーリンクをクリックしてマクロを実行するにはどうすればよいですか?

ブックからシートを選択したときにマクロを実行するにはどうすればよいですか?


最高のオフィス生産性ツール

Kutools for Excelはほとんどの問題を解決し、生産性を80%向上させます

  • 再利用: すばやく挿入 複雑な数式、チャート および以前に使用したものすべて。 セルを暗号化する パスワード付き。 メーリングリストを作成する そしてメールを送る...
  • スーパーフォーミュラバー (複数行のテキストと数式を簡単に編集できます); 読書レイアウト (多数のセルを簡単に読み取って編集する); フィルター範囲に貼り付け...
  • セル/行/列をマージする データを失うことなく; 分割セルコンテンツ; 重複する行/列を組み合わせる...重複セルを防止します。 範囲を比較する...
  • [複製]または[一意]を選択します 行; 空白行を選択 (すべてのセルは空です); スーパーファインドとファジーファインド 多くのワークブックで; ランダム選択...
  • 正確なコピー 数式参照を変更せずに複数のセル。 参照の自動作成 複数のシートに; 箇条書きを挿入、チェックボックスなど...
  • テキストを抽出、テキストの追加、位置による削除、 スペースを削除する; ページング小計の作成と印刷。 セルの内容とコメントを変換する...
  • スーパーフィルター (フィルタースキームを保存して他のシートに適用します); 高度な並べ替え 月/週/日、頻度など。 特殊フィルター 太字、斜体...
  • ワークブックとワークシートを組み合わせる; キー列に基づいてテーブルをマージします。 データを複数のシートに分割; xls、xlsx、PDFをバッチ変換...
  • 300 以上の強力な機能. Office / Excel 2007-2021 および 365 をサポートします。すべての言語をサポートします。 企業や組織に簡単に導入できます。 フル機能の 30 日間無料トライアル。 60日間の返金保証。
kteタブ201905

Officeタブは、タブ付きのインターフェイスをOfficeにもたらし、作​​業をはるかに簡単にします

  • Word、Excel、PowerPointでタブ付きの編集と読み取りを有効にする、パブリッシャー、アクセス、Visioおよびプロジェクト。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性を 50% 向上させ、毎日何百回もマウス クリックを減らすことができます!
officetab下部
コメントを並べ替える
コメント (6)
まだ評価はありません。 最初に評価してください!
このコメントは、サイトのモデレーターによって最小化されました
efectivamente funciona pero quiero aplicarlo en varias celdas、que variable debo cambiar?
このコメントは、サイトのモデレーターによって最小化されました
Accessでこれを行うためにVBAコードを使用する方法はありますか? ありがとう
このコメントは、サイトのモデレーターによって最小化されました
こんにちは!

Al aplicarlo me sale un errordecompilación:Ladeclaracióndelprocedimientonocorcentconladescripcióndeleventooel procedimiento que tiene elmismonombre。 Que quiere decir eso? que debo cambiar / arreglar? グラシアス
このコメントは、サイトのモデレーターによって最小化されました
おはようございます。 次のドロップダウンメニューからマクロを実行できますか:マクロを実行し、ドロップダウンメニューから各項目の個別のシートを保存するには? あなたの場合は次のようになります。
1.マクロを実行すると、指定されたフォルダーに保存された「空白行を挿入」の値でシートが分離されます
2.指定されたフォルダに保存された「すべてのシートを非表示にする:」の値を持つ分離されたシート
3.指定されたフォルダに保存された「日付に変換」の値が記載された別紙。
4.マクロが完了しました


マクロがドロップダウンメニューからの選択を自動的に変更することを除いて、主に私はこれらすべてを設定することができますか?


感謝


イワン
このコメントは、サイトのモデレーターによって最小化されました


完全に機能する最初のコードプライベートサブワークシート_Change(ByValターゲットを範囲として)
交差しない場合(Target、Range( "D1"))は何もありません
ケース範囲( "D1")を選択
         ケース「0.5」:半分
         ケース「1」:XNUMXつ
         ケース「1.25」:OneTwentyFive
選択して終了
終了する場合
End Subの
XNUMX番目のコードが機能していません(plzは以下を修正してください)
Private Sub Change(ByVal Target As Range)
交差しない場合(Target、Range( "D2"))は何もありません
ケース範囲( "D2")を選択
         ケース「9.53」:ninepointfivethree
選択して終了
終了する場合
End Subの
このコメントは、サイトのモデレーターによって最小化されました
A co jeśli potrzebuję aby po uruchomieniu makra wszystkie listy rozwijane ustawiły się na jeden z wyborów z listy? W sumie odwrotnie do tego co jest w poście. Czy istnieje na to łatwiejszy sposób?
ここにはまだコメントが投稿されていません
あなたのコメントを残す
ゲストとして投稿
×
この投稿を評価:
0   文字
推奨される場所

フォローする

著作権©の2009 - WWW。extendoffice.com。 | | 全著作権所有。 搭載 ExtendOffice。 | サイトマップ
MicrosoftおよびOfficeのロゴは、米国MicrosoftCorporationの米国およびその他の国における商標または登録商標です。
SectigoSSLで保護