ひとり税理士の井ノ上陽一さんが、Excelの積み上げ縦棒グラフを使ってB/S(貸借対照表グラフ)を作成する手順を記事にしてらっしゃいます。
サンプルファイルも用意されていますから、是非ご自分の手を動かして確認していただきたいと思います。
その一方、実務でこの一連の操作を頻繁に繰り返すのは、面倒に感じるのも事実でしょう。
特に、データラベルに系列名を表示する操作は、[データラベルの書式設定]作業ウィンドウ-[ラベルオプション]で[系列名]チェックボックスを繰り返す必要があり、
流動資産・固定資産・流動負債・固定負債・純資産という区分だけの場合はまだしも、現預金・売掛金・商品・備品・保証金・買掛金・未払い費用・預り金・借入金・資本金・利益剰余金...といった科目まで入れる場合、かなり面倒です。
この部分だけを楽にするExcelマクロを作ってみました。
アクティブグラフのデータラベルに、系列名を表示するマクロです。
データラベルに系列名を表示するサンプルマクロ
グラフを選択しておいてから以下のSubプロシージャを実行すると、アクティブなグラフにデータラベルが表示され、系列名が追加されます。
On Error GoTo ErrHndl
With ActiveChart
.ApplyDataLabels
Dim srs As Series
For Each srs In .FullSeriesCollection
srs.DataLabels.ShowSeriesName = True
Next srs
End With
ErrHndl:
Err.Clear
MsgBox "グラフを選択してから実行してください。"
End Sub
サンプルマクロの解説
ChartオブジェクトのApplyDataLatbelsメソッドで、
アクティブなグラフにデータラベルを表示してから、
With ActiveChart
.ApplyDataLabels
ChartオブジェクトのFullSeriesCollectionメソッドで取得した、
FullSeriesCollectionコレクションオブジェクトに対して、For Each~Nextループを回して、
Dim srs As Series
For Each srs In .FullSeriesCollection
個々のデータ系列を表すSeriesオブジェクトのDataLabelsメソッドで
DataLabelsコレクションオブジェクトを取得して、
srs.DataLabels.ShowSeriesName = True
DataLabelsコレクションオブジェクトのShowSeriesNameプロパティに、
Trueを設定して系列名を表示しています。
srs.DataLabels.ShowSeriesName = True
グラフがアクティブでないときに実行するとエラーとなるので、
ErrHndl:
Err.Clear
MsgBox "グラフを選択してから実行してください。"
とエラートラップを入れています。
最終更新日時:2022-05-21 05:26
- Newer:VBAでシート名をワイルドカード指定する
- Older:VBAで一つ上の数式をコピーする
Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » データラベルに系列名を表示するExcelマクロ