【VBAリファレンス|実務向け】グラフ内に数値を確認できる表を付け加える|Excel 一般

スポンサーリンク

導入:なぜグラフに「データテーブル」を表示するのか

Excelでグラフを作成する際、元データがグラフから離れた場所にあると、閲覧者が数値を照らし合わせるために視線を何度も往復させる必要があります。これは資料の可読性を大きく損ねる原因です。
そこで活用したいのが「データテーブル」機能です。グラフ内に直接数値を表示させることで、グラフの視覚的インパクトと、数値データの正確な参照という二つのメリットを両立させることができます。

基礎知識:データテーブルとは

データテーブルとは、グラフの軸の下に表示される、グラフの元データが記載された表のことです。
この機能を使うことで、グラフの凡例と数値が直感的に結びつき、プレゼン資料や報告書において「どの項目がどの数値を示しているか」を即座に判断できるようになります。なお、円グラフやレーダーチャートなど、構造上この機能に対応していないグラフタイプもある点は覚えておきましょう。

実装:Excelのバージョン別設定方法

最新のExcel環境では、グラフを選択した際に現れる「グラフデザイン」タブを活用します。

Excel 2013以降の場合:
1. グラフをクリックして選択します。
2. 上部メニューの「グラフデザイン」タブを選択します。
3. 左側にある「グラフ要素を追加」をクリックします。
4. 「データテーブル」を選択し、「凡例マーカー付きデータテーブルを表示」などを選択します。

Excel 2007/2010の場合:
1. グラフを選択し、「グラフツール」の「デザイン」タブを開きます。
2. 「グラフのレイアウト」グループから、表が表示されるレイアウトを選択します。

サンプルプログラム:VBAでデータテーブルを自動追加する

実務では、マクロを使って複数のグラフを一括で装飾したい場面も多いでしょう。以下は、アクティブシート上のグラフすべてにデータテーブルを追加するVBAコードです。


Sub AddDataTableToAllCharts()
' 変数の宣言
Dim chtObj As ChartObject

' アクティブシート上のすべての埋め込みグラフをループ処理
For Each chtObj In ActiveSheet.ChartObjects
' グラフのデータテーブルを表示する
' HasDataTableプロパティをTrueにすることで表示されます
With chtObj.Chart
.HasDataTable = True

' オプション:凡例マーカーを表示する設定
.DataTable.ShowLegendKey = True
End With
Next chtObj

MsgBox "すべてのグラフにデータテーブルを追加しました。", vbInformation
End Sub

応用・注意点:現場での活用テクニック

・スペースの確保:データテーブルを表示すると、グラフの描画エリアが自動的に縮小されます。グラフが小さくなりすぎて見づらい場合は、グラフエリア全体を少し大きく調整してください。
・書式の調整:データテーブル内のフォントサイズが小さすぎる場合は、テーブル部分をクリックして「ホーム」タブからフォントサイズを変更可能です。
・バグ回避:コードを実行する際、グラフが存在しないシートで実行するとエラーになる可能性があるため、必要に応じて「If ActiveSheet.ChartObjects.Count > 0 Then」といった判定を入れるとより堅牢なプログラムになります。

データテーブルを活用して、誰が見ても一目で理解できるプロフェッショナルな資料作成を目指しましょう。

タイトルとURLをコピーしました