下記マクロを実行しましたところ、イミディエイトウインドウに7と表示されます。
グラフがアクティブシートに7つあるから当然です。
しかし、4行目でエラーとなります。
4行目の「ActiveSheet」を除いても同じ結果です。
チャートオブジェクトの数は数えられるが、オブジェクト個々の操作はできないのでしょうか?
Dim n As Byte
n = ActiveSheet.ChartObjects.Count
Debug.Print n
ActiveSheet.ChartObjects(3).ChartTitle.Text = "TEST"
ちなみに
ActiveChart.ChartTitle.Text = "TEST"
は意図した通りになります。
よろしくおねがいします。
Dim n As Integer
n = ActiveSheet.ChartObjects.Count
If n >2 Then
With ActiveSheet.ChartObjects(3).Chart
.ChartTitle.Caption = "TEST"
''.ChartTitle.Text = "TEST1" '(別の書き方)
End With
End If
Dim n As Byte
これは違います。Integer 型 や、Long型です。 Byte 型でもエラーは出ませんが、一般的ではありません。
お礼
構造をちゃんと理解していませんでした。 ありがとうございます。