指定範囲(I9:CW40)から図形(円・四角形)のクリアをするとエラーになってしまいます。終了をすればクリアはできるのですが。御教授願えませんでしようか?(尚四角形はセルの枠線上に貼り付けるようにしてあります。)
Sub 図形のクリア()
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Dim myRng As Range
Dim sp As Variant
Set myRng = Range("I9:CW40")
For Each sp In ActiveSheet.Shapes
If Not Intersect(Range(sp.TopLeftCell, sp.BottomRightCell), myRng) Is Nothing Then
sp.Delete (ここで実行時1004のエラーになる。)
End If
Next
Set myRng = Nothing
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
End Sub
No.1ベストアンサー
- 回答日時:
当然の結果だと思います
ForEachは Inに指定した コレクションが普遍であるとして動作します
削除を行いたいのであれば ShapesのCountプロパティを使ってループを組みます
dim n as integer, sp as Variant
for n = ActiveSheet.Shapes.Count to 1 step -1
set sp = ActiveSheet.Shapes(n)
if Not Intersect(Range(sp.TopLeftCell, sp.BottomRightCell),myRng) Is Nothing then
sp.Delete
end if
next
といった具合に Shapesコレクションの末尾から削除するようにしましょう
おしゃるとおりだと思います。無事に解決できました。
やはり勉強不足は否めませんし冷静に考えればそうなんですけどご指摘のように自分で考えて修正できるように少しずつでもスキルアップしていきたいと思います。
本当にありがとうございます。
No.2
- 回答日時:
当方xl2010ですが、特にエラーも無く実行できました。
一般にFor Eachを用いて削除すると、内部の管理番号?の振り直しのためか、消し損じが出ることがありますが、今回若干の試験では、消し損じも確認できませんでした。
エラー発生時のShapeを確認し、何か特異点が無いか確認してはいかがでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
推しミネラルウォーターはありますか?
推しミネラルウォーターがあったら教えてください
-
フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
あなたが普段思っている「これまだ誰も言ってなかったけど共感されるだろうな」というあるあるを教えてください
-
映画のエンドロール観る派?観ない派?
映画が終わった後、すぐに席を立って帰る方もちらほら見かけます。皆さんはエンドロールの最後まで観ていきますか?
-
海外旅行から帰ってきたら、まず何を食べる?
帰国して1番食べたくなるもの、食べたくなるだろうなと思うもの、皆さんはありますか?
-
天使と悪魔選手権
悪魔がこんなささやきをしていたら、天使のあなたはなんと言って止めますか?
-
エクセルマクロで指定範囲内の図形を削除
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAでFormat がうまく使えない
-
Debug Assertion Failed?
-
Web.Config 構成ファイルのエラー
-
NET USE コマンドでエ...
-
VBAで印刷するとエラーになって...
-
Eclipseでのエラー検出の機能に...
-
VBA初心者ですがダウンローダー...
-
JPEGファイルのFTPエラーについて
-
シェルスクリプトの実行エラー...
-
UWSC初心者です。
-
LTspiceのTime Stepエラーについて
-
C# HttpWebRequestのエラーにつ...
-
ASP.NETでのランタイムエラー?...
-
既にVBアプリが入っているP...
-
エラーコード 70 「書き込み...
-
【Win32Api】 ERROR_BAD_UNIT ...
-
Excel ファイルに保存すると実...
-
Access ADOで文字列を日付型へi...
-
CreateObjectでエラー
-
実行時エラー'1004': アプリケ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAでFormat がうまく使えない
-
ACCESS VBAのOpenForm書き方
-
Debug Assertion Failed?
-
NET USE コマンドでエ...
-
Web.Config 構成ファイルのエラー
-
不明なソフトウェア例外(0xe06...
-
エラーコード 70 「書き込み...
-
シェルスクリプトの実行エラー...
-
Excel ファイルに保存すると実...
-
ホームページビルダーの”全体の...
-
C# HttpWebRequestのエラーにつ...
-
VBAで印刷するとエラーになって...
-
図形のクリアで実行時の1004エ...
-
Eclipseでのエラー検出の機能に...
-
EXCELを開くとエラーがでます。
-
LTspiceのTime Stepエラーについて
-
vbaでファイルを開くパス名に変...
-
bcpadがうまく実行できないので...
-
POV-Ray についての質問です!
-
iphone同期時にエラーが出ます
おすすめ情報