フォーム、フォーム コントロール、およびワークシート上の ActiveX コントロールの概要

重要:  この記事は機械翻訳されています。機械翻訳についての「免責事項」をお読みください。この記事の英語版を参照するには、ここをクリックしてください。

重要: この機能は、Windows RT PC 上の Office では使用できません。使用している Office のバージョンを表示したいですか。

ワークシート フォームの例 フォームおよびそれに追加できる多くのコントロールとオブジェクトを使用することにより、ワークシートでのデータ入力をより簡単にし、ワークシートの表示方法を向上させることができます。Microsoft Visual Basic for Applications (VBA) のコードをほとんど、またはまったく必要としないで、自身の操作でこれらのことを行うこともできます。

ワークシート フォームは、Excel テンプレートと同じではありません。テンプレートは、お好みのようなブックを作成するファイルを書式設定済みです。フォームには、ボックスまたはドロップダウン リストで、することが簡単に入力するか、データを編集するワークシートを使用しているユーザーのなどのコントロールが含まれています。テンプレートのダウンロードの詳細については、 Excel テンプレートを参照してください。

フォームについて

印刷されたフォームでも、オンライン フォームでも、フォームは、情報の取得、整理、および編集を容易にする標準的な構造と形式でデザインされたドキュメントです。

  • 印刷されたフォームには、データを記入するための指示、書式、ラベル、および空白が含まれます。Excel と Excel テンプレートを使用して、印刷されたフォームを作成できます。

  • オンライン フォームにも、印刷されたフォームと同じ機能が含まれます。さらに、オンライン フォームにはコントロールが含まれます。コントロールは、データを表示したり、ユーザーによるデータの入力や編集、操作の実行、または選択を容易にしたりするオブジェクトです。一般的に、コントロールを使用すると、フォームが使いやすくなります。一般的なコントロールの例としては、リスト ボックス、オプション ボタン、コマンド ボタンなどがあります。またコントロールから、割り当てられているマクロを実行したり、Visual Basic for Applications (VBA) コードを実行することでマウス クリックなどのイベントに応答できます。

Excel では、いくつかの方法で、印刷されたフォームおよびオンライン フォームを作成できます。

Excel フォームの種類

データ フォーム、フォーム コントロールおよび ActiveX コントロールを含むワークシート、VBA のユーザー フォームなど、Excel で作成できるフォームには複数の種類があります。各種類のフォームを単独で使用することも、さまざまな方法で組み合わせて目的に適したソリューションを作成することもできます。

データ フォーム

データ フォームでは、左右にスクロールすることなく、セル範囲やテーブル内の 1 行全体の情報を簡単に入力または表示できます。データ列が多くて画面に収まらない場合、データ フォームを使用すると、列間を移動する必要がないため、簡単にデータを入力することができます。列見出しをラベルとして一覧表示する単純な形式のテキスト ボックスで十分対応でき、リスト ボックスやスピン ボタンなどの高度なフォーム機能やカスタムのフォーム機能が不要な場合に、データ フォームを使用します。

一般的なデータ フォームの例 Excel では、 範囲またはテーブルの組み込みのデータ フォームを自動的に生成できます。データ フォームでは、すべての列見出しがラベルとして 1 つのダイアログ ボックスに表示されます。各ラベルの横には空のテキスト ボックスが表示され、そこに各列のデータを入力できます (最大で 32 列まで)。新しい行を入力するフォームのデータ、[検索] 行を移動する、または (セルの内容に基づいて) の行を更新し、行を削除します。セルに、 数式が含まれている場合は、データ フォームで、数式の結果が表示されますが、データ フォームを使用して数式を変更することはできません。

フォーム コントロールおよび ActiveX コントロールを含むワークシート

ワークシートはフォームの一種であり、グリッドでデータを入力および表示できます。Excel ワークシートには、コメントやデータ検証など、コントロールに似た複数の機能が既に組み込まれています。セルはテキスト ボックスに似ており、さまざまな方法で入力および書式設定できます。セルはラベルとして使用されることが多く、セルの高さと幅を調整し、セルを結合することで、ワークシートを簡単なデータ入力フォームのように利用できます。セルのコメント、ハイパーリンク、背景画像、データ検証、条件付き書式、埋め込みグラフ、オートフィルターなど、コントロールに似た他の機能を使用すると、ワークシートを高度なフォームと同じように機能させることができます。

柔軟性を高めるために、コントロールおよび他の描画オブジェクトをワークシートの描画キャンバスに追加し、ワークシートのセルと結合して連係させることができます。たとえば、リスト ボックス コントロールを使用すると、項目を一覧から簡単に選択できるようになります。また、スピン ボタン コントロールを使用すると、数字を簡単に入力できるようになります。

コントロールおよびオブジェクトは描画キャンバスに格納されるため、行や列の境界に関係なく、関連する文字列の横にコントロールおよびオブジェクトを表示できます。ワークシート内のデータ グリッドやデータ テーブルのレイアウトを変更する必要はありません。通常、こうしたコントロールの多くは、ワークシート内のセルにリンクさせることもでき、その動作に VBA コードは必要ありません。プロパティの設定によって、コントロールを自由に移動できるか、移動およびサイズ変更の際にセルに合わせるかを指定できます。たとえば、セル範囲を並べ替えたときに、基になっているセルに合わせて移動するチェック ボックスを作成できます。ただし、リスト ボックスを常に特定の場所に表示する場合は、基になっているセルと一緒に移動しないようにする必要があります。

Excel には、フォーム コントロールと ActiveX コントロールという 2 種類のコントロールがあります。これらのコントロールのセットのほか、 オートシェイプ、 ワードアート、SmartArt グラフィック、またはテキスト ボックスなどの [描画ツールからオブジェクトを追加することもできます。

次のセクションでは、これらのコントロールと描画オブジェクトについて説明します。また、その使用方法についても詳しく説明します。

フォーム コントロール

フォーム コントロールは、以前のバージョンの Excel (Excel 5.0 以降) と互換性のある独自のコントロールです。XLM マクロ シートでも使用できるように設計されています。

フォーム コントロールは、VBA コードを使用しないでセルのデータを簡単に参照および操作する場合や、コントロールをグラフ シートに追加する場合に使用します。たとえば、ワークシートのセルにリンクすることをリスト ボックス コントロールを追加した後、選択したアイテムの現在の位置の数値をコントロールに戻ることができます。その数値を INDEX 関数と組み合わせて使用することで、一覧から別の項目を選択できます。

また、フォーム コントロールを使用してマクロを実行できます。既存のマクロをコントロールに関連付けることも、新しいマクロを作成または記録することもできます。フォームのユーザーがコントロールをクリックすると、マクロが実行されます。

ただし、こうしたコントロールは、ユーザー フォームに追加したり、イベントの制御に使用したり、Web ページ上で Web スクリプトを実行するように変更したりできません。

フォーム コントロールの概要

ボタン名

説明

ボタン イメージ

ラベル

[フォーム] ラベル コントロールの例

セルまたはテキスト ボックスの目的を示したり、説明のテキスト (タイトル、キャプション、図など) や簡単な指示を表示したりします。

ボタン イメージ

グループ ボックス

[フォーム] グループ ボックス コントロールの例

関連するコントロールを、省略可能なラベルを持つ四角形で囲まれた 1 つの視覚的な単位としてグループ化します。通常は、オプション ボタン、チェック ボックス、または密接に関連するコンテンツをグループ化します。

ボタン イメージ

ボタン

[フォーム] ツール バーのボタン コントロールの例

ユーザーがクリックしたときに、アクションを実行するマクロを実行します。ボタンはプッシュ ボタンとも呼ばれます。

ボタン イメージ

チェック ボックス

[フォーム] ツール バーのチェック ボックス コントロールの例

違いのはっきりとした選択肢を示す値を有効または無効にします。1 つのワークシートまたはグループ ボックスで複数のチェック ボックスをオンにできます。チェック ボックスには、オン (選択)、オフ (非選択)、および複合 (複数選択した場合のオンとオフの状態の組み合わせ) という 3 つの状態があります。

ボタン イメージ

オプション ボタン

[フォーム] オプション ボタン コントロールの例

相互に排他的な少数の選択肢から 1 つを選択できるようにします。通常、オプション ボタンは、グループ ボックスまたはフレーム内に置かれます。オプション ボタンには、オン (選択)、オフ (非選択)、および複合 (複数選択した場合のオンとオフの状態の組み合わせ) という 3 つの状態があります。ラジオ ボタンとも呼ばれます。

ボタン イメージ

リスト ボックス

[フォーム] リスト ボックス コントロールの例

1 つまたは複数の文字列の項目の一覧が表示され、その一覧からユーザーが項目を選択できます。リスト ボックスは、番号や内容が異なる選択肢を多数表示する場合に使用します。3 種類のリスト ボックスがあります。

  • 単一選択リスト ボックスでは、1 つの項目のみ選択できます。この場合、リスト ボックスはオプション ボタンのグループと同じ機能を持つように見えますが、リスト ボックスでは多数のアイテムをより効率的に扱うことができます。

  • 複数選択リスト ボックスでは、1 つの項目または連続した (隣り合った) 項目を選択できます。

  • 拡張選択リスト ボックスでは、1 つの項目、連続した項目、および不連続な (隣り合わない) 項目を選択できます。

ボタン イメージ

コンボ ボックス

[フォーム] コンボ ボックス コントロールの例

テキスト ボックスとリスト ボックスを組み合わせて、ドロップダウン リスト ボックスを作成します。コンボ ボックスはリスト ボックスよりコンパクトですが、項目の一覧を表示するには下向き矢印をクリックする必要があります。エントリを入力したり、一覧から 1 つの項目のみを選択したりするには、コンボ ボックスを使用します。このコントロールでは、入力方法に関係なく、現在の値がテキスト ボックスに表示されます。

ボタン イメージ

スクロール バー

[フォーム] ツール バーのスクロール バー コントロールの例

スクロール矢印をクリックするか、スクロール ボックスをドラッグすることにより、値の範囲をスクロールします。さらに、一方のスクロール矢印とスクロール ボックスとの間の領域をクリックすることにより、(事前に設定した間隔で) ページ内を移動することもできます。通常は、関連付けられたセルまたはテキスト ボックスに文字列値を直接入力することもできます。

ボタン イメージ

スピン ボタン

[フォーム] スピン ボタン コントロールの例

連続する数、時刻、日付などの値を増減します。値を増やすには、上矢印をクリックします。値を減らすには、下矢印をクリックします。通常は、関連付けられたセルまたはテキスト ボックスに文字列値を直接入力することもできます。

注: 次のコントロールでは、 Office Excel 2007ブックでは使用できません。Excel 5.0 ダイアログ シートだけでは、これらのコントロールを使用できます。

ボタン名

ボタン イメージ テキスト フィールド

ボタン イメージ リスト エディット コンボ ボックス

ボタン イメージ ドロップ ダウン エディット コンボ ボックス

ボタン イメージ ダイアログの実行

ActiveX コントロール

ActiveX コントロールは、ワークシート フォーム (VBA コードを使用することもできます) および VBA のユーザー フォームで使用できます。通常、フォーム コントロールよりも柔軟な設計要件が必要な場合に ActiveX コントロールを使用します。ActiveX コントロールには、外観、動作、フォント、およびその他の特性をカスタマイズできる広範なプロパティがあります。

また、ActiveX コントロールを操作したときに発生するさまざまなイベントを制御することもできます。たとえば、ユーザーがリスト ボックス コントロールから選択した項目に応じて異なるアクションを実行したり、ボタンをクリックしたときにデータベースを照会してコンボ ボックスの項目を変更したりできます。また、ActiveX コントロールと関連付けられたイベントに応答するマクロを作成することもできます。フォームでユーザーがコントロールを操作すると、VBA コードによって、そのコントロールに対して発生した任意のイベントの処理が実行されます。

また、コンピューターには、Excel や他のプログラムによってインストールされた多数の ActiveX コントロール (カレンダー コントロール 12.0、Windows Media Player など) が含まれています。

重要: すべての ActiveX コントロールをワークシートで直接使用できるわけではありません。一部のコントロールは Visual Basic for Applications (VBA) のユーザー フォームでのみ使用できます。このような ActiveX コントロールをワークシートに追加しようとすると、"オブジェクトを挿入できません" というメッセージが表示されます。

ただし、ActiveX コントロールは、ユーザー インターフェイスからグラフ シートに追加したり、XLM マクロ シートに追加したりすることはできません。また、フォーム コントロールと同じように ActiveX コントロールから直接実行されるマクロを割り当てることもできません。

ActiveX コントロールの概要

ボタン名

説明

ボタン イメージ

チェック ボックス

ActiveX のチェック ボックス コントロールの例

違いのはっきりとした選択肢を示す値を有効または無効にします。1 つのワークシートまたはグループ ボックスで複数のチェック ボックスを同時にオンにできます。チェック ボックスには、オン (選択)、オフ (非選択)、および複合 (複数選択した場合のオンとオフの状態の組み合わせ) という 3 つの状態があります。

ボタン イメージ

テキスト ボックス

ActiveX テキスト ボックス コントロールの例

四角形のボックス内で、セルにバインドされた文字列またはデータを表示、入力、または編集できます。また、読み取り専用の情報を表示する静的なテキスト フィールドとして使用することもできます。

ボタン イメージ

コマンド ボタン

ActiveX のコマンド ボタン コントロールの例

ユーザーがクリックしたときに、アクションを実行するマクロを実行します。コマンド ボタンはプッシュ ボタンとも呼ばれます。

ボタン イメージ

オプション ボタン

ActiveX のオプション ボタン コントロールの例

相互に排他的な少数の選択肢から 1 つを選択できるようにします。通常、グループ ボックスまたはフレーム内に置かれます。オプション ボタンには、オン (選択)、オフ (非選択)、および複合 (複数選択した場合のオンとオフの状態の組み合わせ) という 3 つの状態があります。ラジオ ボタンとも呼ばれます。

ボタン イメージ

リスト ボックス

ActiveX リスト ボックス コントロールの例

1 つまたは複数の文字列の項目の一覧が表示され、その一覧からユーザーが項目を選択できます。リスト ボックスは、番号や内容が異なる選択肢を多数表示する場合に使用します。3 種類のリスト ボックスがあります。

  • 単一選択リスト ボックスでは、1 つの項目のみ選択できます。この場合、リスト ボックスはオプション ボタンのグループと同じ機能を持つように見えますが、リスト ボックスでは多数のアイテムをより効率的に扱うことができます。

  • 複数選択リスト ボックスでは、1 つの項目または連続した (隣り合った) 項目を選択できます。

  • 拡張選択リスト ボックスでは、1 つの項目、連続した項目、および不連続な (隣り合わない) 項目を選択できます。

ボタン イメージ

コンボ ボックス

ActiveX コンボ ボックス コントロールの例

テキスト ボックスとリスト ボックスを組み合わせて、ドロップダウン リスト ボックスを作成します。コンボ ボックスはリスト ボックスよりコンパクトですが、項目の一覧を表示するには下向き矢印をクリックする必要があります。エントリを入力したり、一覧から 1 つの項目のみを選択したりする場合に使用します。このコントロールでは、入力方法に関係なく、現在の値がテキスト ボックスに表示されます。

ボタン イメージ

トグル ボタン

ActiveX のトグル ボタン コントロールの例

"はい/いいえ" などの状態、または "オン/オフ" などのモードを示します。ボタンをクリックすると、有効な状態と無効な状態が入れ替わります。

ボタン イメージ

スピン ボタン

ActiveX スピン ボタン コントロールの例

連続する数、時刻、日付などの値を増減します。値を増やすには、上矢印をクリックします。値を減らすには、下矢印をクリックします。通常は、関連付けられたセルまたはテキスト ボックスに文字列値を入力することもできます。

ボタン イメージ

スクロール バー

ActiveX のスクロール バー コントロールの例

スクロール矢印をクリックするか、スクロール ボックスをドラッグすることにより、値の範囲をスクロールします。さらに、一方のスクロール矢印とスクロール ボックスとの間の領域をクリックすることにより、(事前に設定した間隔で) ページ内を移動することもできます。通常は、関連付けられたセルまたはテキスト ボックスに文字列値を直接入力することもできます。

ボタン イメージ

ラベル

ActiveX ラベル コントロールの例

セルまたはテキスト ボックスの目的を示したり、説明のテキスト (タイトル、キャプション、図など) や簡単な指示を表示したりします。

ボタン イメージ

イメージ

ActiveX イメージ コントロールの例

ビットマップ、JPEG、GIF などの画像を埋め込みます。

フレーム コントロール

ActiveX グループ ボックス コントロールの例

関連する複数のコントロールを 1 つの視覚的な単位としてグループ化した、省略可能なラベルを持つ四角形のオブジェクトです。通常は、オプション ボタン、チェック ボックス、または密接に関連するコンテンツをフレーム コントロールにグループ化します。

注: [挿入] コマンドのActiveX コントロール] セクションでは、ActiveX のフレーム コントロールを使用できません。ただし、[コントロールの選択] ダイアログ ボックスで [Microsoft Forms 2.0 Frame] を選択すると、コントロールを追加できます。

ボタン イメージ

コントロールの選択

カスタム フォームに追加でき、コンピューターで使用できる追加の ActiveX コントロール (カレンダー コントロール 12.0、Windows Media Player など) の一覧を表示します。このダイアログ ボックスではカスタム コントロールを登録することもできます。

描画ツール オブジェクト

図形の例 フォームには、SmartArt グラフィック、図形、ワードアート、およびテキスト ボックスを含める場合もあります。これらのオブジェクトをサイズ変更、回転、反転、色設定、結合することで、さらに複雑な図形を作成できます。図形またはテキスト ボックス オブジェクトに文字列を直接入力すると、文字列はそのオブジェクトの一部になります。オブジェクトを回転または反転させると、文字列も一緒に回転または反転します。ActiveX コントロールとは異なり、オブジェクト内の個別の単語や文字に、フォント サイズやフォント スタイルなどの異なる属性を割り当てることができます。また、これらのオブジェクトにマクロを割り当てたり、ハイパーリンクを追加したりすることもできます。さらに、図形またはテキスト ボックス オブジェクトの文字列をワークシートのセルにリンクさせ、更新された値をこれらのオブジェクトに動的に表示することもできます。

ワークシート フォームでコントロールおよびオブジェクトを使用する

通常、ワークシート フォームにフォームや ActiveX を追加した場合は、優れたデザインの使いやすいフォームを作成するために、さまざまな方法でコントロールを微調整および整理する必要があります。一般的な作業を次に示します。

  • コントロールを操作するときの枠線の表示を調整する。最終的なワークシート フォーム上でユーザーに対して枠線を表示するかどうかを決定する。

  • プロパティを指定したり、追加調整を行ったりできるように、コントロールを選択および選択解除する。

  • コントロール内のテキスト (キャプション、ラベルなど) を編集する。

  • コントロールのグループ化、コピー、移動、および位置揃えを行い、ワークシート フォームのレイアウトを整える。

  • 目的の外観になるように、コントロールのサイズ変更および書式設定を行う。

  • コントロールの位置とサイズをセルに合わせて設定する。

  • 特定のデータ保護要件に応じて、コントロールおよびリンクされたセルを保護する。

  • ワークシート フォームを印刷する場合、コントロールの印刷を有効または無効にする。

  • 使用されていないコントロールを削除する。

ワークシート フォームでは、背景のセルの枠線の表示と非表示を切り替えることができます。たとえば、セルの枠線を非表示にし、すべてのセルを同じ色やパターンで書式設定したり、シートの背景として図を使用したりできます。枠線の表示と非表示を切り替えるには、[表示] タブの [表示/非表示] グループで、[枠線] チェック ボックスをオフまたはオンにします。

ワークシート内のコントロールの種類を特定する

独自に変更できる 3 種類のコントロールとオブジェクトがあるので、外観だけではどの種類かわからないことがあります。コントロールの種類 (フォームまたは ActiveX) を特定するには、コントロールを選択して右クリックし、ショートカット メニューを表示します。

  • ショートカット メニューに [プロパティ] が表示される場合、そのコントロールは ActiveX コントロールであり、デザイン モードになっています。

  • ショートカット メニューに [マクロの登録] が表示される場合、そのコントロールはフォーム コントロールです。

    ヒント: フォームのグループ ボックス コントロールのショートカット メニューを正しく表示するには、グループ ボックスの内側ではなく、必ず境界線を選択してください。

  • ショートカット メニューに [テキストの編集] が表示される場合、そのオブジェクトは描画オブジェクトです。

VBA のユーザー フォーム

柔軟性を最大限に、ユーザー設定] ダイアログ ボックスで、通常は 1 つ以上の ActiveX コントロールを追加するには、ユーザー フォームを作成できます。使用できるようにする、Visual Basic Editor を作成する VBA コードからします。ユーザー フォームを作成するための大まかな手順は次のとおりです。

  1. ブックの VBAProject にユーザー フォームを挿入します。アクセスするブックの VBAProject Visual Basic Editor (alt キーを押しながら F11 キーを押します) を表示し、[挿入] メニューで、ユーザー フォーム] をクリックします。

  2. ユーザー フォームを表示するためのプロシージャを記述します。

  3. ActiveX コントロールを追加します。

  4. ActiveX コントロールのプロパティを変更します。

  5. ActiveX コントロールのイベント ハンドラー プロシージャを記述します。

ユーザー フォームを使用すると、フォームの高度な機能を使用することもできます。たとえば、プログラムでアルファベットの文字ごとに異なるオプション ボタンを追加したり、多数の日付と数字を含む一覧の項目ごとにチェック ボックスを追加したりできます。

ユーザー フォームを作成する前に、Excel で使用できる組み込みのダイアログ ボックスの使用を検討してください。その方が目的に合っている場合があります。 このような組み込みダイアログ ボックスとしては、VBA の InputBox 関数や MsgBox 関数、Excel の InputBox メソッド、GetOpenFilename メソッド、GetSaveAsFilename メソッド、そして Excel のすべての組み込みダイアログ ボックスが含まれる Application オブジェクトの Dialogs オブジェクトなどがあります。

詳細については、「Microsoft Office Excel デベロッパー ポータル」を参照してください。

Access アプリの基本タスク

注: 機械翻訳についての免責事項: この記事の翻訳はコンピューター システムによって行われており、人間の手は加えられていません。マイクロソフトでは、英語を話さないユーザーがマイクロソフトの製品、サービス、テクノロジに関するコンテンツを理解するのに役立てるため、こうした機械翻訳を提供しています。記事は機械翻訳されているため、用語、構文、文法などに誤りがある場合があります。

スキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×