フォーム コントロール ボタンまたはコマンド ボタン (ActiveX コントロール) を使用して、ユーザーがクリックしたときにアクションを実行するマクロを実行できます。 どちらのボタンもプッシュ ボタンと呼ばれ、ワークシートの印刷、データのフィルター処理、数値の計算を自動化するように設定できます。 一般に、フォーム コントロール ボタンと ActiveX コントロール コマンド ボタンは外観と機能に似ています。 ただし、いくつかの違いがあります。これについては、次のセクションで説明します。
ボタン (フォーム コントロール)
|
コマンド ボタン (ActiveX コントロール)
|
以下のセクションでは、Excel のボタン (Windows または Mac 用) にマクロを追加する方法について説明します。
注: ActiveX コントロールは Mac ではサポートされていません。
マクロと VBA ツールは、[ 開発者 ] タブにあります。既定では非表示になっています。
最初の手順では、有効にします。 詳細については、記事「[開発者] タブを表示する」を参照してください。
ボタンを追加する (フォーム コントロール)
-
[ 開発者 ] タブの [ コントロール ] グループで 、[ 挿入] をクリックし、[ フォーム コントロール] の下の [ ボタン ] をクリックします。
-
ワークシートで、ボタンを配置するセルをクリックします (このセルは、表示されるボタンの左上隅に表示されます)。 [ マクロの割り当て ] ポップアップ ウィンドウが表示されます。
-
ボタンにマクロを割り当て、[OK] をクリック します。
-
ボタンのコントロール プロパティを指定するには、ボタンを右クリックし、[ コントロールの書式設定] をクリックします。
コマンド ボタンを追加する (ActiveX コントロール)
-
[ 開発 ] タブの [ コントロール ] グループで 、[ 挿入] をクリックし、[ ActiveX コントロール] の下の [ コマンド ボタン ] をクリックします。
-
コマンド ボタンの左上隅を表示するワークシートの場所をクリックします。
-
[コントロール] グループ で 、[ コードの表示] をクリックします。 これにより、Visual Basic エディターが起動します。 右側のドロップダウン リストで [クリック] が選択されていることを確認します。 ボタン を クリックすると、次の 2 つのマクロ (下図を参照) がCommandButton1_Clickサブ プロシージャによって実行されます。 SelectC15 と HelloMessage。
-
コマンド ボタンのサブプロファイルで、次のいずれかの操作を行います。
-
ブック内の既存のマクロの名前を入力します。 [コード] グループで [マクロ] をクリックすると、マクロを見つけることができます。 サブプロファイル内の個別の行にマクロ名を入力することで、ボタンから複数のマクロを実行できます。
-
必要に応じて、独自の VBA コードを追加します。
-
-
Visual Basic エディターを閉じ、[デザイン モード] をクリックして、デザイン モードがオフになっていることを確認します。
-
ボタンの一部である VBA コードを実行するには、先ほど作成した ActiveX コマンド ボタンをクリックします。
-
ActiveX コントロールを編集するために、デザイン モードで作業していることを確認します。 [開発] タブの [コントロール] で [デザイン モード] をオンにします。
-
コマンド ボタンのコントロール プロパティを指定するには、[ 開発 ] タブの [ コントロール ] グループで、[ プロパティ ] をクリックします。 コマンド ボタンを右クリックし、[ プロパティ] をクリックすることもできます。
注: [プロパティ] をクリックする前に、プロパティを調査または変更するオブジェクトが選択されていることを確認します。
指定する対象 |
使用するプロパティ |
---|---|
全般: |
|
ブックを開いたときにコントロールが読み込まれるかどうか。 (ActiveX コントロールでは無視されます)。 |
AutoLoad (Excel) |
コントロールがフォーカスを受け取り、ユーザーが生成したイベントに応答できるかどうかを指定します。 |
Enabled (フォーム) |
コントロールを編集できるかどうか |
Locked (フォーム) |
コントロールの名前 |
Name (フォーム) |
コントロールとその下に位置するセルとの連結方法 (自由に移動できる、移動できるがサイズ変更できない、または移動もサイズ変更も可能) |
Placement (Excel) |
コントロールを印刷できるかどうか |
PrintObject (Excel) |
コントロールが表示されるかどうか |
Visible (フォーム) |
文字列: |
|
フォントの属性 (太字、斜体、サイズ、取り消し線、下線、および太さ) |
Bold、Italic、Size、StrikeThrough、Underline、Weight (フォーム) |
コントロールの上に表示する、コントロールを識別または説明するための説明テキスト |
Caption (フォーム) |
コントロールの内容を行の最後で自動的に折り返すかどうか |
WordWrap (フォーム) |
サイズと位置: |
|
すべての内容が表示されるようにコントロールのサイズが自動的に調整されるかどうか |
AutoSize (フォーム) |
高さまたは幅 (ポイント単位) |
Height、Width (フォーム) |
コントロールからワークシートの左端または上端までの距離 |
Left、Top (フォーム) |
書式: |
|
背景色 |
BackColor (フォーム) |
背景のスタイル (透明または不透明) |
BackStyle (フォーム) |
前景色 |
ForeColor (フォーム) |
コントロールに影を適用するかどうか |
Shadow (Excel) |
イメージ: |
|
コントロールに表示するビットマップ |
Picture (フォーム) |
ピクチャとキャプションとの相対的な位置関係 (左、上、右など) |
PicturePosition (フォーム) |
キーボードとマウス: |
|
コントロールのショートカット キー |
Accelerator (フォーム) |
ユーザー設定のマウス アイコン |
MouseIcon (フォーム) |
ユーザーが特定のオブジェクト (標準、矢印、I ビームなど) の上にマウスを置いたときに表示されるポインターの種類。 |
MousePointer (フォーム) |
コントロールがクリックされたときにフォーカスを取得するかどうか。 |
TakeFocusOnClick (フォーム) |
マクロと VBA ツールは、[ 開発者 ] タブにあります。既定では非表示になっています。そのため、最初の手順では有効にします。
-
[Excel > 基本設定]に移動します。.. リボン & ツール バーを > します。
-
[リボンのユーザー設定] カテゴリの [メイン タブ] の一覧で、[開発] チェック ボックスをオンにしてから、[保存] をクリックします。
ボタンを追加する (フォーム コントロール)
手順
-
[ 開発者 ] タブで、[ ボタン ] をクリックします。
-
ワークシートで、ボタンを配置するセルをクリックします (このセルは、表示されるボタンの左上隅に表示されます)。 [ マクロの割り当て ] ポップアップ ウィンドウが表示されます。
注: 既にボタンを挿入している場合は、ボタンを右クリックして、[ マクロの割り当て] を選択できます。
-
ボタンにマクロを割り当てて、[OK] をクリック します。
-
ボタンのコントロール プロパティを指定するには、ボタンを右クリックし、[ コントロールの書式設定]を選択します。
コマンド ボタンを追加する (Visual Basic コントロール)
-
[ 開発者 ] タブで、[ ボタン ] をクリックします。
-
コマンド ボタンの左上隅を表示するワークシートの場所をクリックします。
注: 既にボタンを挿入している場合は、ボタンを右クリックして、[ マクロの割り当て] を選択できます。
-
[マクロの割り当て] ダイアログ ボックスで[新規] を選択します。これにより、次のコードを含むウィンドウに Visual Basic エディター (VBE) が開きます。
Sub ButtonX_Click() End Sub
-
コマンド ボタンのサブプロファイルで、 Sub 行と End Sub 行の間で、次のいずれかの操作を行います。
-
ブック内の既存のマクロの名前を入力します。 サブ プロシージャ内の個別の行にマクロ名を入力することで、ボタンから複数のマクロを実行できます
-
独自の VBA コードを追加します。
-
-
[デザイン モード ] をクリックしてデザイン モードがオフになっていることを確認し、[Visual Basic エディター] ウィンドウを閉じます。
-
ボタンを編集するには、ボタンを右クリックし、[ Visual Basic] を選択します。
-
ボタンのコントロール プロパティを指定するには、ボタンを右クリックし、[ コントロールの書式設定]を選択します。
補足説明
Excel Tech Communityで、いつでも専門家に質問できます。また、コミュニティでは、サポートを受けられます。