Sub TEST1()
'散布図を作成
ActiveSheet.Shapes.AddChart2.Select 'グラフを挿入
ActiveChart.ChartType = xlXYScatter '散布図に変更
ActiveChart.SetSourceData Range("A1").CurrentRegion '参照範囲を設定
End Sub
データを用意しておきます。
元データ
では、VBAコードを実行してみます。
「散布図」を作成できた
「散布図」を作成できました。
散布図の種類を変更
散布図の種類を変更してみます。
「ChartType」を使う
グラフの種類を変更するには、「ChartType」を使います。
Sub TEST2()
'グラフ種類を変更
ActiveSheet.ChartObjects(1).Chart.ChartType = xlXYScatterSmooth '散布図(平滑線とマーカー)
End Sub
Sub TEST8()
With ActiveSheet.ChartObjects(1).Chart
.HasLegend = True '凡例を表示
.Legend.IncludeInLayout = True 'グラフと重ねない
.Legend.Position = xlBottom '下に表示
End With
End Sub
グラフを用意しておきます。
では、VBAコードを実行してみます。
VBAで「凡例」を設定できました。
「凡例」を非表示
「凡例」を非表示にするには、「.HasLegend = False」です。
Sub TEST9()
With ActiveSheet.ChartObjects(1).Chart
.HasLegend = False '凡例を非表示
End With
End Sub
Sub TEST14()
'「1つ目」の系列の「線」
With ActiveSheet.ChartObjects(1).Chart.SeriesCollection(1).Format.Line
.Visible = msoTrue '塗りつぶしあり
.ForeColor.RGB = RGB(255, 0, 0) '赤
End With
End Sub
グラフを用意しておきます。
では、VBAコードを実行してみます。
VBAで「線」を設定できました。
「線」を非表示
「線」を非表示にするには、「.Visible = msoFalse」とします。
Sub TEST15()
'「1つ目」の系列の「線」
With ActiveSheet.ChartObjects(1).Chart.SeriesCollection(1).Format.Line
.Visible = msoFalse '塗りつぶしなし
End With
End Sub
Sub TEST16()
'「1つ目」の系列
With ActiveSheet.ChartObjects(1).Chart.SeriesCollection(1)
.MarkerStyle = 2 'マーカーを設定(種類:1~9)
End With
End Sub
グラフを用意しておきます。
では、VBAコードを実行してみます。
VBAでマーカーの「種類」を設定できました。
マーカーを非表示
マーカーを非表示にするには、「.MarkerStyle = xlNone」とします。
Sub TEST17()
'「1つ目」の系列
With ActiveSheet.ChartObjects(1).Chart.SeriesCollection(1)
.MarkerStyle = xlNone 'マーカー非表示
End With
End Sub
では、VBAコードを実行してみます。
VBAでマーカーを非表示にできました。
マーカーの「サイズ」
マーカーの「サイズ」するには、「.MarkerSize」を使います。
Sub TEST18()
'「1つ目」の系列
With ActiveSheet.ChartObjects(1).Chart.SeriesCollection(1)
.MarkerSize = 10 'マーカーサイズ
End With
End Sub
グラフを用意しておきます。
では、VBAコードを実行してみます。
VBAでマーカーの「サイズ」を設定できました。
マーカーの「色」
マーカーの「背景色」は、「.MarkerBackgroundColor」を使います。
マーカーの「枠線色」は、「.MarkerForegroundColor」です。
背景色がマーカーの中心部分で、枠線色はマーカーの外側部分になります。
Sub TEST19()
'「1つ目」の系列
With ActiveSheet.ChartObjects(1).Chart.SeriesCollection(1)
.MarkerBackgroundColor = RGB(255, 0, 0) 'マーカー背景色
.MarkerForegroundColor = RGB(255, 0, 0) 'マーカー枠線色
End With
End Sub
Sub TEST20()
With ActiveSheet.ChartObjects(1).Chart.SeriesCollection(1)
.HasDataLabels = True 'データラベルを表示
.DataLabels.Position = xlLabelPositionRight '右
End With
End Sub
グラフを用意しておきます。
では、VBAコードを実行してみます。
VBAでデータラベルを表示できました。
データラベルを非表示
データラベルを非表示にするには、「.HasDataLabels = False」です。
Sub TEST21()
With ActiveSheet.ChartObjects(1).Chart.SeriesCollection(1)
.HasDataLabels = False 'データラベルを非表示
End With
End Sub