ホーム > カテゴリ > Excel・VBA >

コマンドボタンの使い方 [ExcelのVBA]

コマンドボタン

「コマンドボタン」はボタンをクリックするとなんらかの動作を実行するコントロールです。

正式名称CommandButton

コード例 - 基本操作

次のコードはコマンドボタンがクリックされた時にメッセージボックスを表示します。

Private Sub CommandButton1_Click()

  MsgBox "ボタンがクリックされました。"
  
End Sub

[結果]

コード例 - Cancel/Default

次はCancel/Defaultプロパティの動作確認となります。実行後には「Escキー」または「Enterキー」を押します。

プロパティ内容
CancelESCキーを押した時にそのボタンが実行されます。
DefaultEnterキーを押した時にそのボタンが実行されます。
※Cancel/Defaultプロパティは1つのフォームでそれぞれ1つしか設定できません。

Private Sub CommandButton1_Click()

  MsgBox "コマンドボタン1が実行されました。"
  
  ' Esc/Enterキーをテストする為、
  ' フォーカスをテキストボックスに移動する
  TextBox1.SetFocus
  
End Sub

Private Sub CommandButton2_Click()
  
  MsgBox "コマンドボタン2が実行されました。"
   
  ' Esc/Enterキーをテストする為、
  ' フォーカスをテキストボックスに移動する
  TextBox1.SetFocus
  
End Sub

' フォームのロード時
Private Sub UserForm_Initialize()

  ' タブの順番を設定
  TextBox1.TabIndex = 0
  CommandButton2.TabIndex = 1
  CommandButton1.TabIndex = 2
  
  ' コマンドボタン1をキャンセル/デフォルトボタンにする
  CommandButton1.Cancel = True
  CommandButton1.Default = True
  
End Sub

[結果]

※コマンドボタン2にフォーカスがあるときに「Enterキー」を押すとコマンドボタン2が実行されます。これはWindowsの仕様となります。

プロパティの一覧

プロパティ内容
Acceleratorコントロールのアクセラレータ(ショートカットキー)を設定する。英数字1文字を設定可能。実行時はAlt+設定したキーで実行できます。
AutoSizeコントロールのサイズを自動的に文字列に合わせる
BackColorコントロールの背景色
BackStyleコントロールの背景スタイル
Cancelキャンセルボタンにするかどうか
Captionコントロールの表示名
ControlTipTextコントロールのチップテキスト(ヒント)の設定
Defaultデフォルトボタンにするかどうか
Enabledコントロールの使用設定(True/False)
Font文字列のフォントの設定
ForeColor文字列の表示色の設定
Heightコントロールの縦幅
HelpContextIDヘルプのコンテキストIDの設定
Leftコントロールの表示位置(画面の左幅)
Lockedコントロールの編集設定(オン/オフ)
MouseIconマウスアイコンの設定
MousePointerマウスポインターの設定
Pictureコントロールの画像設定
PicturePosition画像の表示位置
TabIndexタブインデックス。タブキーを押した時の順番を設定する
TabStopタブキーを押した時に止まるかの設定
Tag任意の文字列を設定(String型)
TakeFocusOnClickクリックされた時のフォーカスの取得設定(オン/オフ)
Topコントロールの表示位置(画面の上幅)
Visibleコントロールの表示設定(True/False)
Widthコントロールの横幅
WordWrap文字列を自動的に折り返すかどうか

※プロパティの基本的な使い方は「プロパティの使い方」をご覧ください。

イベントの一覧

イベント内容
BeforeDragOverコントロールへファイルをドラッグ中。
BeforeDropOrPasteコントロールへファイルをドロップした。
Clickコントロールをクリックした。
DblClickコントロールをダブルクリックした。
Enterコントロールにフォーカスが移る時。
Errorコントロールでエラーが発生した。
Exitコントロールのフォーカスが別のコントロールに移る時。
KeyDownコントロール上でなんらかのキーを押した。
KeyPressコントロール上で英数字記号キーを押した。
KeyUpコントロール上でなんらかのキーを離した。
MouseDownコントロール上でマウスのボタンを押した。
MouseMoveコントロール上でマウスが移動した。
MouseUpコントロール上でマウスのボタンを離した。

※イベントの基本的な使い方は「イベントの使い方」をご覧ください。

Visual Basicのコントロール

共通操作
 プロパティの使い方 イベントの使い方

ラベル
テキストボックス
コンボボックス
リストボックス
チェックボックス
オプションボタン
トグルボタン
フレーム
コマンドボタン
タブストリップ
マルチページ
スクロールバー
スピンボタン
イメージ
ユーザーフォーム

エクセル講座のクイックリンク

ホーム 新機能 基本(初級) 基本(中級) 基本(上級) 関数 マクロ VBA TIPS





関連記事



公開日:2015年07月01日 最終更新日:2015年07月06日
記事NO:01091