【VBA】グラフ設定を動的に変更する
作成日:2022-09-11
更新日:2022-11-06

[前提]
- ベースは設定済
- 折れ線グラフの数は不定
- 2軸にするデータは名前で判断
グラフを設定する標準モジュール

for eachで名前で判断し、1つ1つ設定する
Public Sub SettingGraph()
'グラフ設定
Dim IsSecondary As Boolean: IsSecondary = False
With wb
With Worksheets("グラフ")
.Activate
With .ChartObjects(1).Chart
For Each a In .SeriesCollection
With a
Select Case .name
Case "項目名1"
.ChartType = xlLine '折れ線グラフ
.Border.Color = RGB(237, 125, 49)
Case "項目名2"
.ChartType = xlLine
.Border.Color = RGB(0, 176, 80)
.AxisGroup = 2 '2軸にする
IsSecondary = True
Case Else
.ChartType = xlColumnClustered '集合縦棒
.Interior.Color = RGB(68, 114, 196)
.Border.LineStyle = xlLineStyleNone '枠線なし
End Select
End With
Next
'2軸がある場合
If IsSecondary Then
With .Axes(xlValue, xlSecondary)
.MinimumScale = 0.7 '最小値
.MaximumScale = 1# '最大値
.TickLabels.NumberFormatLocal = "0%" '表示形式
End With
End If
End With
End With
.Save
End With
End Sub
2022-09-11
編集後記:
この記事の内容がベストではないかもしれません。
記事一覧
-

[VBA]Resizerows and columns 【VBA】Resize changes the size of a cell range|範囲のリサイズ -

絶対値を取得 【VBA】絶対値を取得する|Abs -

[VBA]Horizontal Paste1D array 【VBA】一次元配列を横方向にシートに貼り付け【範囲をリサイズする】 -

[VBA]Nameでパス変更 【VBA】ブックのフルパスを変更する(ファイル名の変更も含む)|Name -

[VBA]CSVに書き出す 【VBA】CSVに配列の中身を書き出す|ADODB.Stream -

テーブルの値を取得する 【VBA】Excelテーブルのデータを配列で取得する