「excel vba chartobjects index番号 0」
といった検索キーワードでアクセスがありました。
Indexが「0」のChartObjectオブジェクトがある、と考えている方による検索でしょうか。
Index「0」のChartObjectはExcel VBAにはない
結論からお伝えすると、Indexが「0」のChartObjectは、Excel VBAにはありません。
0オリンジンの配列等にのみ慣れたプログラミング経験のある方には気持ち悪いかもしれませんが、Excel VBAの場合、Excelの何らかの要素を表すコレクションに含まれる要素オブジェクトのIndexは、基本的に1オリジンです。
もちろん、Excel VBAではなく何らかの別のプログラミング言語でCOMアプリケーションExcelを操作する場合、言語によっては0オリジンのコレクションを取得できる場合はあります。
Index「0」のChartObjectがないことを確認する
埋め込みグラフが存在するワークシートがアクティブな状態で以下のExcelマクロを実行しても、必ず実行時エラーが発生します。
ActiveSheet.ChartObjects(0).Select
End Sub
「.ChartObjects(0)」を「.ChartObjects(1)」に変更して実行すれば、Indexが「1」の埋め込みグラフが選択されます。
ChartObjectのIndexを確認する
複数の埋め込みグラフが存在するワークシートがアクティブな状態で、以下のSubプロシージャも実行してみてください。
Dim cho As ChartObject
For Each cho In ActiveSheet.ChartObjects
cho.Select
Application.ScreenUpdating = True
MsgBox cho.Index
Next
End Sub
埋め込みグラフが順番に選択され、そのIndex番号がメッセージボックスに表示されます。
最終更新日時:2022-07-15 15:49
- Newer:Sheets.Selectの戻り値は??
- Older:UsedRangeの1行目を取得する
Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » Indexが「0」のChartObjectはExcel VBAに存在しない