Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » Chartsの戻り値をCharts型オブジェクト変数に代入してみよう

Chartsの戻り値をCharts型オブジェクト変数に代入してみよう

動作検証バージョン:64bit Windows 10 Pro + 32bit Excel(バージョン2005 ビルド12827.20268 Microsoft Store)

Excel VBAの、Chartsプロパティの戻り値がSheetsと定義されていることをオブジェクトブラウザーで確認する手順と、総称Object型で宣言したオブジェクト変数にChartsプロパティの戻り値を代入して型がSheetsとなることをローカルウィンドウで確認する手順をご紹介しました。

[スポンサードリンク]

まだ納得できない方は、Chartsプロパティの戻り値を、Charts型のオブジェクト変数に代入するコードを実行したら、どうなるかを確認してください。

Chartsの戻り値を確認するSubプロシージャ

以下のようなSubプロシージャを用意します。

Sub Chartsプロパティの戻り値を確認する()
 Dim coll_chart As Charts
 Set coll_chart = Charts
End Sub

Chartsプロパティの戻り値を、Charts型で宣言したオブジェクト変数に代入するだけで、具体的な処理は行っていません。

このSubプロシージャは、ローカルウィンドウでObject型で宣言したオブジェクト変数にChartsプロパティの戻り値を代入して、型がSheetsになることを確認した際のSubプロシージャの後半部分を切り出して、変数宣言を、

 Dim coll_chart As Object

から、

 Dim coll_chart As Charts

に変更したものです。

Chartsの戻り値をCharts型変数に代入すると……

上記のSubプロシージャを実行すると、

 Set coll_chart = Charts

の行で「型が一致しません。」実行時エラーが発生します。

Chartsプロパティの戻り値はChartsオブジェクトではないにも関わらず、Charts型で宣言されているオブジェクト変数に代入しようとしたためです。

Chartsプロパティの戻り値はSheetsですから、

 Dim coll_chart As Charts

の部分を、

 Dim coll_chart As Sheets

に修正してやれば、実行時エラーは発生しなくなります。

上記の内容はWorksheetsプロパティについて同じで、こちらは既に記事を公開しています。

最終更新日時:2020-06-17 14:07

[スポンサードリンク]

Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » Chartsの戻り値をCharts型オブジェクト変数に代入してみよう

「グラフ・Chart」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.