【VBA不要】Excelのフォームコントロールで作るインタラクティブなダッシュボードの作り方

インタラクティブなダッシュボードは、大量のデータを動的に可視化・分析するための強力なツールです。Excelでは、フォームコントロールを活用することで、VBA(マクロ)を使わずに誰でも手軽にダッシュボードを構築できます。ボタンやスライダー、コンボボックス、チェックボックスなどを通じてデータを直感的に操作でき、素早くインサイトを得ることが可能です。この記事では、売上データを例に、フォームコントロールを使ったインタラクティブなダッシュボードの作り方をステップごとに解説します。
ステップ1:データセットを準備する
まずは、売上データをExcelテーブルに変換しましょう。テーブル化しておくと、数式やグラフの参照範囲が自動的に拡張されるため、データの追加や管理が非常に楽になります。
- 売上データの範囲を選択します。
- 挿入タブ → テーブル を選択します。
- 「先頭行をテーブルの見出しとして使用する」にチェックを入れ、OKをクリックします。

- テーブル名を「SalesData」など分かりやすい名前に変更しておきましょう(テーブルデザインタブから設定できます)。
Excelテーブルにすることで、数式やグラフが動的な範囲を参照するようになります。
ステップ2:フォームコントロールを挿入してセルにリンクする
データセットの内容や目的に応じて、適切なフォームコントロールを選択します。ここでは以下の3種類を使用します。
オプションボタン(地域での絞り込み用)
- 開発タブ → 挿入 → オプションボタン を選択します。
- ダッシュボード領域にプラスアイコン(+)をドラッグして配置します。
- オプションボタンを右クリック → コントロールの書式設定 を選択します。

- オブジェクトの書式設定ダイアログボックスで:
- リンクするセル:地域の選択結果を保存するセル(例:J1)を指定します。
- 影付き(3-D)にチェックを入れ、OKをクリックします。
- オプションボタンを右クリック → テキストの編集 → 地域名(North、South、East、Westなど)を1つずつ入力します。

コンボボックス(製品での絞り込み用)
- 開発タブ → 挿入 → コンボボックス を選択し、ダッシュボード領域に配置します。
- コンボボックスを右クリック → コントロールの書式設定 を選択します。
- オブジェクトの書式設定ダイアログボックスで:
- 範囲:製品のリスト(Product A〜Product Dなど)を選択します。
- リンクするセル:選択結果を保存するセル(例:K1)を指定します。
- 影付き(3-D)にチェックを入れ、OKをクリックします。

チェックボックス(指標の表示切り替え用)
売上高(Revenue)、販売数量(Units Sold)、利益(Profit)といった指標の表示・非表示を切り替えるために使用します。
- 開発タブ → 挿入 → チェックボックス を選択し、ダッシュボード領域に配置します。
- チェックボックスを右クリック → コントロールの書式設定 を選択します。
- リンクするセルに、それぞれ別のセル(例:L1、M1、N1)を指定し、影付き(3-D)をオンにしてOKをクリックします。
- チェックボックスを右クリック → テキストの編集 → 指標名(売上高、販売数量、利益など)を1つずつ入力します。
チェックボックスは、リンク先のセルにTRUE(オン)またはFALSE(オフ)を返します。たとえば「売上高」ならL1、「販売数量」ならM1、「利益」ならN1に対応させます。

ステップ3:動的な数式を作成する
フォームコントロールの選択内容と売上データを連携させることで、ダッシュボードをインタラクティブにできます。ここでは、FILTER・SWITCH・IF関数を組み合わせ、選択内容に応じてデータを動的に抽出します。
FILTER関数でデータを動的に抽出する
地域で絞り込む場合:
選択した地域に基づいて売上データを抽出するには、任意のセルに次の数式を入力します。
=FILTER(SalesData, SalesData[Region] = SWITCH(J1, 1, "North", 2, "South", 3, "East", 4, "West"))
- FILTER関数は、SalesDataテーブルから、Region列がJ1の選択値と一致する行のみを抽出して表示します。
- SWITCH関数は、J1に入る数値(1〜4)を対応する地域名("North"/"South"/"East"/"West")に変換します。結果には一致した行だけが含まれます。

製品で絞り込む場合:
選択した製品に基づいて売上データを抽出するには、次の数式を入力します。
=FILTER(SalesData, SalesData[Product] = SWITCH(K1, 1, "Product A", 2, "Product B", 3, "Product C", 4, "Product D"))
この数式は、コンボボックスでの選択に応じて売上データを絞り込みます。たとえばコンボボックスで「Product A」を選択すると、Product Aの売上データのみが返されます。

地域と製品の両方で絞り込む場合:
地域と製品の両方の条件で絞り込みたい場合は、次の数式を使用します。
=FILTER(SalesData, (SalesData[Region] = SWITCH(J1, 1, "North", 2, "South", 3, "East", 4, "West")) * (SalesData[Product] = SWITCH(K1, 1, "Product A", 2, "Product B", 3, "Product C", 4, "Product D")))
条件同士を掛け算(*)で組み合わせることでAND条件を実現しています。たとえば「South」地域と「Product B」を選択すると、South地域のProduct Bの売上情報のみが返されます。

IF関数で指標の表示を切り替える
チェックボックスの選択状態に応じて各指標を表示するには、IF関数を使用します。チェックボックスをオンにするとリンクセルがTRUEに、オフにするとFALSEになります。この値を基に、IF関数が合計値または空白を返します。
売上高の合計:
=IF(L1, SUM(SalesData[Revenue ($)]), "")
チェックボックス「売上高」がオンのときだけ合計売上高を表示します。絞り込み後のデータから合計を求めたい場合は、FILTER関数の結果範囲に対してSUMを組み合わせてください。
利益の合計:
=IF(M1, SUM(SalesData[Profit ($)]), "")
チェックボックス「利益」がオンのときに、利益の合計を表示します。
販売数量の合計:
=IF(N1, SUM(SalesData[Units Sold]), "")
チェックボックス「販売数量」がオンのときに、販売数量の合計を表示します。
出力結果:

ステップ4:動的グラフを挿入する
- フィルターされたデータ範囲を選択します。
- 挿入タブ → すべてのグラフ → 縦棒グラフ を選択します。

- グラフはコンボボックスやオプションボタンの選択に応じて自動的に更新されます。下の例では、North地域におけるProduct Aの売上が表示されています。

- フィルターの選択を変更すると、グラフも動的に更新されます。ここではEast地域とProduct Cを選択してみました。

ステップ5:ダッシュボードをカスタマイズする
- 図形の挿入:
- フィルター、グラフ、指標などのセクションを見やすく区切るために、目的に合わせた図形を追加します。
- 書式設定:
- 統一感のある色・フォント・スタイルを使用すると、ダッシュボード全体の見栄えが向上します。
- 条件付き書式を活用すれば、重要な数値を目立たせて強調できます。

まとめ
以上の手順で、VBAを使わずにフォームコントロールだけでExcelのインタラクティブなダッシュボードを作成できます。大規模なデータセットを使いながら、視覚的にも魅力的で操作性の高いダッシュボードを構築するための重要なステップをすべて紹介しました。データを動的に絞り込んで分析できるため、意思決定を支援する強力なツールになります。ぜひ、フォームコントロールのその他の機能もいろいろと試してみてください。
-
Microsoft Publisherで図形に画像を挿入する方法
Microsoft Publisherでは、図形の中に画像を挿入できることをご存知でしょうか?出版物に図形を挿入する際には、「図形の塗りつぶし(Shape Fill)」「図形の輪郭(Shape Outline)」「図形の効果(Shape Effects)」などの機能を使って、見栄えの魅力的なデザインにカスタマイズできます。特に「図形の塗りつぶし」機能を活用すれば、図形に色、画像、グラデーション、テクスチャ、パターンなどを自由に追加することが可能です。 Publisherで図形に画像を挿入する手順 Microsoft Publisherで円や任意の図形に画像を挿入するには、以下の手順に従ってく
-
Excelでテキストの先頭・末尾の文字を削除する方法|RIGHT・LEFT・MID関数の使い方
Microsoft Excelでデータを扱っていると、テキストの先頭や末尾、あるいはその両方から特定の文字数を削除したい場面があります。例えば、名前のリストから「Dr.」や「Lt.」などの敬称を取り除きたい場合には、先頭の文字を削除する方法が便利です。また、氏名の後ろに付いた電話番号を消したい場合には、末尾の文字を削除する方法が役立ちます。なお、この記事ではスペースも1文字としてカウントすることに注意してください。 Excelで特定の文字より前または後ろのテキストを削除する この記事では、Excelでテキストの先頭・末尾、または指定した位置の文字を削除する方法を解説します。以下の3つのケースに