Excel VBA セルに簡易グラフを作成する

スポンサーリンク

セルに簡易グラフを作成する方法

セルの値の増減を視覚的に表現するには、セルに値の増減に合わせて簡易的な棒グラフを表示すると、値の増減が一目瞭然でわかり便利です。セルに簡易グラフを表示する方法としては、Range【レンジ】オブジェクトに含まれる条件付き書式の集まりを表すFormatConditions【フォーマットコンディションズ】コレクションの、データの大きさによって長さの異なるデータバーを表示する
AddDatabar【アドデータバー】メソッドを使用して作成する方法がありますが、ここでは、文字を指定した数並べて表示するString【ストリング】関数を使用して、セルに簡易グラフを作成する方法について説明します。

実行結果

A列の値を元にB列に簡易グラフを表示するコードと解説

Sub 簡易グラフ()
 Dim 最終行 As Long
 Dim i As Long
   最終行 = Cells(Rows.Count, 1).End(xlUp).Row
 For i = 2 To 最終行
   Cells(i, 2).Value = String(Int(Cells(i, 1).Value / 100), "|")
 Next i
End Sub
2行目【Dim 最終行 As Long】
A列のデータが入力されている最終行番号を格納する変数「最終行」を長整数型(Long)で宣言します。


3行目【Dim i As Long】
繰り返し処理で使用するセルの行番号を格納するカウンター変数「i」を長整数型(Long)で宣言します。


4行目【最終行 = Cells(Rows.Count, 1).End(xlUp).Row】
Cells【セルズ】プロパティで、参照する行をすべての行を表すRows【ロウズ】プロパティのCount【カウント】メソッドを使用して、A列のセルの最終行を参照し、Raneg【レンジ】オブジェクトのEnd【エンド】プロパティを使用して、セルの最終行から上方向にデータが入力されている最終行まで移動し、Row【ロウ】プロパティで行番号を取得して変数「最終行」に代入します。つまり、A列のデータが入力されている最終行番号を取得して変数「最終行」に代入します。


5行目【For i = 2 To 最終行】
For【フォー】ステートメントを使用して繰り返し処理の始まりです。条件式は、カウンター変数「i」に2から変数「最終行」に格納されている行番号を順次格納して繰り返します。つまりA列のデータ数分繰り返します。


6行目【Cells(i, 2).Value = String(Int(Cells(i, 1).Value / 100), “|”)】
指定した文字を指定した数並べて表示するString【ストリング】関数を使用して文字列の「|」をA列の値を100で除算(割り算)した値をInt【イント】関数を使用して小数点以下の値を切り捨てた数分表示します。つまりA列のセルの値が100毎にB列に「|」を1つ表示してに簡易グラフを作成します。


7行目【 Next i】
ここまでの処理をA列のデータ数分繰り返します。


以上で、セルに簡易グラフを作成する方法についての解説を終了します。
ありがとうございました。

スポンサーリンク

関連記事・広告