Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » ActiveChartでChartを取得できたかを判定する

ActiveChartでChartを取得できたかを判定する

動作検証バージョン:Windows版Excel(バージョン1809 ビルド10827.20138)

「activechart グラフの有無判定」
といった検索キーワードに気が付きました。

ActiveChartプロパティで、グラフを表すChartオブジェクトを取得する際に、

オブジェクトブラウザー:ActiveChart

ちゃんとグラフが選択されているかどうか判定するには、どうすればいいのかを探していらしたのでしょうか。

[スポンサードリンク]

ActiveChartでグラフが選択されているか判定するサンプル

以下のSubプロシージャが参考になるでしょう。


Sub ActiveChartの確認()
 Dim cht As Chart
 Set cht = ActiveChart

 If cht Is Nothing Then
  MsgBox "グラフは選択されていません。"
 Else
  MsgBox "グラフが選択されています!"
 End If
End Sub

Chart型に限らず、オブジェクト変数の初期値はNothingです。

オブジェクト変数が初期値Nothingのままなら、
  Set cht = ActiveChart
でChartオブジェクトを取得できなかった、すなわちグラフが選択されていなかった、と判定できます。

ローカルウィンドウでオブジェクト変数を確認しよう

拙著『いちばんやさしいExcel VBAの教本』でも多用しているローカルウィンドウを使って、オブジェクト変数を確認しておきましょう。

メニュー[表示]-[ローカルウィンドウ]からローカルウィンドウを表示した状態で、上記Subプロシージャをショートカットキー[F8]でステップ実行し始めると、オブジェクト変数初期値Nothingを確認できます。

ローカルウィンドウ

[F8]でステップ実行を継続してグラフが選択されていれば、
  Set cht = ActiveChart
の実行後に、Nothingではなくなり、変数名の前に[+]が表示されてオブジェクト変数の中身を見られるようになります。

ローカルウィンドウ

最終更新日時:2018-10-31 19;47

[スポンサードリンク]

Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » ActiveChartでChartを取得できたかを判定する

TrackBack:0

TrackBack URL

Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » ActiveChartでChartを取得できたかを判定する

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

検索


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

.