エクセルVBAに詳しい方、教えて下さい。 http://mikoyellowhome.web.fc2.com/Excel_Note/17-03_zukei.htm#17-03-49
エクセルVBAに詳しい方、教えて下さい。 http://mikoyellowhome.web.fc2.com/Excel_Note/17-03_zukei.htm#17-03-49 こちらのページの「選択範囲のセルの外周に、雲マークの線を描くコードです。」のコードをエクセル2007以降で実行すると、VBAは動くのですが処理がものすごく遅く、色々調べた結果VBAの中で以下の値にエラーが表示されており、これらが処理が遅い原因ではないかと考えています。 (「アプリケーションの定義またはオブジェクト定義のエラーです」と表示されています。) ①CreaterCloudShape.Diagram ②CreaterCloudShape.DiagramNode ③CreaterCloudShape.HasDiagram ④CreaterCloudShape.HasDiagramNode このエラーを回避する方法はあるでしょうか? ちなみにエクセル2003では問題なく動きます。
Visual Basic | Excel・66閲覧・500
ベストアンサー
こんにちは excel2013で、 18セルの範囲で、18秒くらいで、くもっぽくなりましたよ エラーないですし、これは完成してるコード見たいです
お試し頂きありがとうございます。 VBA自体は止まることなく、エラーも出ず動きます。 エクセル2003以前のバージョンだと、どんなに複雑な形状でも1秒かからず作図出来ます。 問題はエクセル2007以降のバージョンだと、1つのセルなら1秒かかりませんが、2つ以上のセルを選択するとだんだん時間がかかるようになります。 (セル範囲が多くなると数分かかります。) そこで時間がかかる原因を探していたところ、例えばブレークポイント等でVBAコードを止めて、VBAの中の変数を調べたところ、上記①~④の4つの項目でエラーの表示となっていました。 (エクセル2003ではエラーになっていません。) 2007からVBAの仕様が変わったのだと推測されますが、原因・対策はわからないでしょうか?
質問者からのお礼コメント
その後色々調べてみましたが、解決策は見つかりませんでした。 色々情報を頂き、ありがとうございました。
お礼日時:1/16 22:56