• ベストアンサー

VBA グラフの存在の判定について

お世話になります。 現在VBAの勉強を行っているのですが、グラフについてどうぞ知恵をお貸しください。 エクセルの操作でグラフを作成した後、そのシートもしくはブックにグラフが存在するかどうかを確かめる判定式を作りたいと思っています。 グラフそのものが存在するかどうかの判定をしたい場合、どのような記述が必要になるのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • okormazd
  • ベストアンサー率50% (1224/2412)
回答No.2

n = Workbooks("book1").Charts.Count n=0ならグラフシートがない。 n>0ならグラフシートがある。

kreuz_z
質問者

お礼

ご回答ありがとうございます。 なるほど、単純にグラフの数で存在するか否かを判定するんですね。 未だにオブジェクトとプロパティ、メソッドの組み合わせがわからない部分があるので、勉強になりました。 ありがとうございます。 下の回答と少し違いがあるようですが…こちらは自分で調べてみますね。 ありがとうございました。

その他の回答 (1)

  • okormazd
  • ベストアンサー率50% (1224/2412)
回答No.1

n = Worksheets("sheet1").ChartObjects.Count n=0ならグラフがない。 n≠0ならグラフがある。

関連するQ&A

  • ExcelのVBAでのグラフ操作について

    Excel2003からExcel2010にアップグレードしたのですが、グラフ操作について質問があります。 Excelのブックにグラフシートがあり、それをVBAで操作した後、2003では ActiveChart.Deselect で選択を解除できたのですが、2010には同じ構文が使用できません。 同様の操作を2010で行うためにはどうすればよいのでしょうか?

  • VBAでファイルの読み取り保護を判定するには?

    VBAでファイルの読み取り保護を判定するには? エクセルVBAで開いたexcelファイルに保存オプションで指定する「読み取りパスワード」が設定されているか否かを判定するにはどの様な記述をするのでしょうか。 ブックの保護非保護判定は、質問番号:2285577 moooonさんの質問にあるのですが・・・

  • VBAでブック保護非保護を判定するには?

    エクセルVBAでブックが保護されているのかどうかを判定するにはどう書けばいいのでしょうか? If ActiveWorkbook.Protect Then ではだめでした。 また、シート保護の判定方法も教えてください。

  • Excel VBAで、ある名前のワークシートが存在するかを調べるには?

    VBA初心者です。 例えば、開いているブックの中に「Sheet4」が存在するかどうかを調べ、無い場合にだけ「Sheet4」を挿入するには、どのように記述すればよいのでしょうか? よろしくお願いします。

  • VBAにて

    お世話になります。 VBAでプログラムを作成しています。 その中で下記の記述にて、エクセルのシートを 削除したい部分があるのですが、Msgboxで、 「選択したシートに、データが存在する可能性があります。  データを完全に削除するには、「削除」をクリックしてください。」 と出るメッセージをVBAの記述により出ない様に したいのですが・・。 その方法を教えてください。 宜しくお願い致します。      記 ActiveWindow.SelectedSheets.Delete

  • ピボットグラフのソースについて

    お世話になります ピボットテーブルをソースに作成したピボットグラフなのですが これのデータソース(データの範囲)をVBAで変更することはできないのでしょうか? 例えばAテーブルと名付けたピボットテーブルからグラフを作成すると グラフのデータ範囲は[ブック名]シート名!Aテーブルとなりますが このAテーブルの部分をBテーブルにVBAで変更したいです 操作上では変更もできずVBAでもそれらしい情報が見つかりませんでした。 よろしくお願いします

  • エクセルのグラフについて

    どなたか教えてください。 エクセルでグラフを作成しているのですが、たとえば、(イ)のBOOKにデータのシートとグラフのシートがあったとして、まったく同じ様式で、(ロ)のBOOKを作成するときに、(イ)のBOOKを開き、データだけを書き換えて、「名前をつけて保存」で(ロ)のBOOKとして保存しました。データが書き換わっているので、当然、そのデータを参照しているグラフも(イ)のグラフから(ロ)のデータのグラフに書き換わるものと思っていましたが、(イ)のグラフのままでした。「元のデータ」で見ると間違いなく新しいデータを参照していることになっているようですが、なぜなんでしょうか?どこかで操作が間違っているのだと思いますが、あれこれ調べても分かりません。どなたかお分かりの方ご指導をお願いいたします。なお、意味が分かりにくければ補足いたします。

  • VBAでUnicodeしか存在しない文字の判定について

    VBA初心者の質問ですが、宜しくお願いします。 エクセル上にUnicodeしか存在しない文字が含まれた文字列を入力するとします。 VBAでその文字列に、Unicodeしか存在しない文字が入力されているかどうかの判定をするにはどのようにしたらいいでしょうか? また、その文字列(Unicodeしか存在しない文字が含まれる)のバイト数を正しく取得するにはどうしたらいいでしょうか?

  • EXCEL VBA でグラフの名前を変更する方法

    EXCELでグラフを作成した場合にそのグラフの名前が 自動的に"グラフ 1"等とつけられますが EXCEL VBA で既に存在するグラフを扱う際に 分かりやすいようにそのグラフの名前を変更したいのですが方法がわかりません。 プロパティなどを見ても変更できそな項目がありません。 これは変更できないのでしょうか? またプログラムを組んで変更する必要があるのでしょうか?どのようなプログラムになりますか?

  • Excel VBAで、グラフを特定のセルに移動させたい。

    VBA初心者です。 エクセルのワークシート上のグラフ(例えば"グラフ1")を、特定のセル(例えばB4)に移動(もしくはカットペースト)させたいのですが、記述方法を教えて頂けないでしょうか。よろしくお願いします。