メインコンテンツへスキップ

Excelでコマンドボタン名を動的にする方法は?

この記事では、指定したセル値を変更して、コマンドボタンの名前を動的に変更する方法について説明します。 たとえば、セルA1の値が「テスト」に変更されると、特定のコマンドボタンの名前が自動的に「テスト」に変更されます。

コマンドボタン名をVBAコードによるセル値で動的にする


コマンドボタン名をVBAコードによるセル値で動的にする

次のVBAコードは、ワークシートの指定されたセル値を使用してコマンドボタンの名前を動的にするのに役立ちます。 次のようにしてください。

1。 クリック Developer > インセット > コマンドボタン(ActiveXコントロール) ワークシートにコマンドボタンを挿入します。 スクリーンショットを参照してください:

2.コマンドボタンを挿入した後、シートタブを右クリックして、 コードを表示 以下のスクリーンショットのように、右クリックメニューから:

3.オープニングで アプリケーション向け Microsoft Visual Basic ウィンドウの場合は、以下のVBAコードをコピーしてウィンドウに貼り付けてください。

VBAコード:コマンドボタン名をセル値で動的にする

Dim xStr As String
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim xShapeRg As ShapeRange
    On Error Resume Next
    If Not Application.Intersect(Target, Range("A1")) Is Nothing Then
        Me.CommandButton1.Caption = Target.Text
        Set xShapeRg = ActiveSheet.Shapes.Range(xStr)
        If xShapeRg Is Nothing Then Set xShapeRg = ActiveSheet.Shapes.Range("CommandButton1")
        Application.EnableEvents = False
        xShapeRg.Select
        Application.EnableEvents = True
        Selection.Name = Target.Text
    End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If (Not Intersect(Target, Range("A1")) Is Nothing) And Target.Text <> "" Then
        xStr = Target.Text
    End If
End Sub

Note: コードでは、CommandButton1 は名前を動的にしたいボタンの名前で、A1 はボタン名の値を自動的に参照するセルです。

4。 プレス 他の + Q 終了するためのキー アプリケーション向け Microsoft Visual Basic 窓。

5.をクリックしてデザインモードをオフにします Developer > デザインモード.

今後、コマンド ボタンの名前は、ワークシート内の指定されたセル値に応じて動的に変更されます。

以下のスクリーンショットに示すように、セル A1 の値が変更されると、コマンド ボタンの名前も自動的に同じ値に変更されます。


関連記事:

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

🤖 Kutools AI アシスタント: 以下に基づいてデータ分析に革命をもたらします。 インテリジェントな実行   |  コードを生成  |  カスタム数式の作成  |  データを分析してグラフを生成する  |  Kutools関数を呼び出す...
人気の機能: 重複を検索、強調表示、または識別する   |  空白行を削除する   |  データを失わずに列またはセルを結合する   |   数式なしのラウンド ...
スーパールックアップ: 複数の基準の VLookup    複数の値の VLookup  |   複数のシートにわたる VLookup   |   ファジールックアップ ....
詳細ドロップダウン リスト: ドロップダウンリストを素早く作成する   |  依存関係のドロップダウン リスト   |  複数選択のドロップダウンリスト ....
列マネージャー: 特定の数の列を追加する  |  列の移動  |  Toggle 非表示列の表示ステータス  |  範囲と列の比較 ...
注目の機能: グリッドフォーカス   |  デザインビュー   |   ビッグフォーミュラバー    ワークブックとシートマネージャー   |  リソースライブラリ (自動テキスト)   |  日付ピッカー   |  ワークシートを組み合わせる   |  セルの暗号化/復号化    リストごとにメールを送信する   |  スーパーフィルター   |   特殊フィルター (太字/斜体/取り消し線をフィルター...) ...
上位 15 のツールセット12 テキスト ツール (テキストを追加, 文字を削除する、...)   |   50+ チャート 種類 (ガントチャート、...)   |   40+ 実用的 (誕生日に基づいて年齢を計算する、...)   |   19 挿入 ツール (QRコードを挿入, パスから画像を挿入、...)   |   12 変換 ツール (数字から言葉へ, 通貨の換算、...)   |   7 マージ&スプリット ツール (高度な結合行, 分割セル、...)   |   ... もっと

Kutools for Excel で Excel スキルを強化し、これまでにない効率を体験してください。 Kutools for Excelは、生産性を向上させ、時間を節約するための300以上の高度な機能を提供します。  最も必要な機能を入手するにはここをクリックしてください...

説明


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

  • Word、Excel、PowerPointでタブ付きの編集と読み取りを有効にする、パブリッシャー、アクセス、Visioおよびプロジェクト。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性を 50% 向上させ、毎日何百回もマウス クリックを減らすことができます!
Comments (2)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Can anyone suggest how I would extend the VBA to additionally assign a macro to the command button so clicking the command button would execute a macro associated with the command button name? For example, after renaming the command button to "XYZ", also assign the macro named "XYZ" to the command button click event. Thank you for any help.
This comment was minimized by the moderator on the site
Hi sam,
Please try as follows.
1. Turn on the Design Mode by clicking Developer > Design Mode.
2. Right click the command button and select View Code in the context menu;
3. Assign your macro between line Private Sub CommandButton1_Click() and End Sub;
4. Turn off the Design Mode

Hope I can help.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations