VBAから
・グラフ(Chart)を作成
できます!
VBAコード
ここでは例として、
・シート「data」のセル「B2」から続く一連の範囲のデータを使用して
・折れ線グラフ(Chart)を作成
します。
また作成したグラフ(Chart)の
・タイトルを「売上データ」
・タイトルのフォントサイズを「12」
と設定します。
Option Explicit
Sub sample()
Dim ws As Worksheet
Dim topPosition As Double
Dim leftPosition As Double
Dim width As Double
Dim height As Double
Dim chartObj As ChartObject
Dim chart As chart
'グラフを作成するシートを指定
Set ws = Worksheets("data")
'グラフを表示させる位置を取得 ※例としてセル「G2」の位置を取得
With ws.Range("G2")
leftPosition = .Left
topPosition = .Top
End With
'グラフの横と縦のサイズを設定
width = 250
height = 180
'ChartObjectオブジェクトを作成
Set chartObj = ws.ChartObjects.Add(leftPosition, topPosition, width, height)
'ChartObjectオブジェクトの名前を設定
chartObj.Name = "売上推移"
'Chartオブジェクト(グラフ)を作成
Set chart = chartObj.chart
With chart
'グラフの作成元としてセル「B2」から一覧の範囲を指定
.SetSourceData Source:=ws.Range("B2").CurrentRegion
'グラフの種類を「折れ線グラフ」に指定
.ChartType = XlChartType.xlLine
'グラフのタイトルを表示
.HasTitle = True
'グラフのタイトルを設定
.ChartTitle.Text = "売上データ"
'グラフのタイトルのフォントサイズを設定
.ChartTitle.Font.Size = "12"
End With
'後片付け
Set chart = Nothing
Set chartObj = Nothing
End Sub
実行結果
グラフ(Chart)を作成できました。
参考①
VBAからグラフ(Chart)を削除することもできます。
参考②
上記で使用した以下の詳細は、公式サイトをご確認ください。
●「Worksheetオブジェクト」の「ChartObjects」メソッド
●「ChartObjectsオブジェクト」の「Add」メソッド
●「ChartObjectオブジェクト」の「Name」プロパティ
●「ChartObjectオブジェクト」の「chart」プロパティ
●「Chartオブジェクト」の「SetSourceData」メソッド
●「Chartオブジェクト」の「ChartType」プロパティ
●列挙体「XlChartType」
●「Chartオブジェクト」の「HasTitle」プロパティ
●「Chartオブジェクト」の「ChartTitle」プロパティ
●「ChartTitleオブジェクト」の「Text」プロパティ
●「ChartTitleオブジェクト」の「Font」プロパティ
公式サイト上に記載されていません。理由は不明です。