Home » Excel VBA Rangeオブジェクト » 条件付き書式 » 条件付き書式・データバーによる棒グラフを作成するExcelマクロ

条件付き書式・データバーによる棒グラフを作成するExcelマクロ

対象:Excel2007, Excel2010, Excel2013, Windows版Excel2016

条件付き書式・データバーによる棒グラフを作成するExcelマクロ

税理士でMicrosoft MVP for Excelの井ノ上陽一さんが
フリーランスとひとり社長のための 経理をエクセルでトコトン楽にする本
を出されました。

本書の中で一番ボリュームの大きい
「5章 集まったデータを分析して経営に役立てる」
では、経理(営管)でExcelをどう使うかという具体例がいくつも書かれており、「フリーランスとひとり社長」に限らず、役立つ人は多いだろうと感じながら読んでいます。

その5章の中の
「4 条件付き書式でコンパクトなグラフを作る」
では、条件付き書式の一種であるデータバーを使ったグラフの作成方法の基本と、セルに棒グラフだけを表示される方法が紹介されています。

この基本操作は、多くの方に身につけていただきたいと思いますが、隣のセルに数値の表示されていないデータバーの作成を頻繁に行うのなら、マクロにしておくほうが便利です。

[スポンサードリンク]

データバーによる棒グラフを作成するサンプルマクロ

元データを選択しておいて、

条件付き書式・データバーによる棒グラフを作成するExcelマクロ

以下のSubプロシージャを実行して、表示される確認のメッセージボックスで[はい]ボタンをクリックすると、選択されていた右隣のセルに、データバーによる棒グラフが、

条件付き書式・データバーによる棒グラフを作成するExcelマクロ

作成されます。

Sub 選択された隣のセルにデータバーグラフを作成する()
 Dim tgt As Range
 Dim msg As String

 Set tgt = ActiveWindow.RangeSelection.Offset(0, 1)
 msg = " セルにデータバーグラフを作成しますか?"
 If MsgBox(tgt.Address(False, False) & msg, vbYesNo) = vbNo Then Exit Sub

 With tgt
  .Clear
  .FormulaR1C1 = "=R[0]C[-1]"
  With .FormatConditions.AddDatabar
   .BarColor.Color = RGB(255, 192, 0)
   .BarFillType = xlDataBarFillSolid
   .ShowValue = False
   .MinPoint.Modify xlConditionValueAutomaticMin
   .MaxPoint.Modify xlConditionValueAutomaticMax
  End With
 End With
End Sub

サンプルマクロについて

「フリーランスとひとり社長のための 経理をエクセルでトコトン楽にする本」の187ページでは、Excel初心者向けにデータをコピーする操作が紹介されていますが、数式にしておくほうが良さそうに感じますので、
  .FormulaR1C1 = "=R[0]C[-1]"
としています。

データバーによる棒グラフを作成する、
  With .FormatConditions.AddDatabar
   .BarColor.Color = RGB(255, 192, 0)
   .BarFillType = xlDataBarFillSolid
   .ShowValue = False
   .MinPoint.Modify xlConditionValueAutomaticMin
   .MaxPoint.Modify xlConditionValueAutomaticMax
  End With
の部分は、ワークシートの状態を確認しながらステップ実行すると、何を設定しているのかがわかるでしょう。

[スポンサードリンク]

Home » Excel VBA Rangeオブジェクト » 条件付き書式 » 条件付き書式・データバーによる棒グラフを作成するExcelマクロ

Copyright © インストラクターのネタ帳 All Rights Reserved.

.