![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
エクセルのVBで教えてほしいんですが、
以下のもので
実行時エラー'1004':
指定したコレクションに対するインデックスが境界を越えています
とエラーがでます
Sub delgrf()
Sheets("断面図").Select
For i = 1 To 1000
ActiveSheet.Shapes.Range(Array(1)).Delete
On Error GoTo 10
Next i
10 Sheets("入力").Select
End Sub
sheet断面図に何もないときに実行すると
ActiveSheet・・・でエラーします(当然だけど;^^)
「断面ありませんよ~」みたいなダイアログ表示して
実行時エラーを回避できるにはどうしたらいいですか?
ご教授お願いします。
No.1ベストアンサー
- 回答日時:
こんな感じでしょうか?
Sub delgrf1()
Dim sp As Variant
Sheets("断面図").Select
If ActiveSheet.Shapes.Count = 0 Then
MsgBox "シェイプはありません。"
Else
If MsgBox("シェイプを削除しますか?", vbYesNo) = vbYes Then
For Each sp In ActiveSheet.Shapes
sp.Delete
Next
End If
End If
Sheets("入力").Select
End Sub
単なる削除ならこちら
Sub delgrf0()
Dim sp As Variant
Sheets("断面図").Select
For Each sp In ActiveSheet.Shapes
sp.Delete
Next
Sheets("入力").Select
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/03/08 09:08
- Visual Basic(VBA) 【VBAエラー】Nextに対するForがありません 対策について 5 2022/11/21 21:26
- Visual Basic(VBA) excel vbaでvlooupの変数がわかりません。 7 2022/05/30 09:35
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/03/07 14:05
- Visual Basic(VBA) Changeイベントで複数セルへの貼り付けおよび値削除時に1個目のセルのみエラーになる 3 2022/12/21 09:07
- Visual Basic(VBA) Excelのマクロ ブック間である範囲をコピー Workbooks(“a.xlsx“).Sheets 3 2022/05/12 17:02
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/03/12 10:10
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/03/02 08:40
- Excel(エクセル) ワードのマクロについて教えてください。 1 2023/03/11 13:50
- Visual Basic(VBA) エクセルのマクロについて教えてください。 5 2023/07/05 09:30
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
エクセルマクロで指定範囲内の図形を削除
Excel(エクセル)
-
Excel VBA インデックスの境界について
Excel(エクセル)
-
特定の名前のオートシェイプの有無を知りたい(エクセルVBA)
Excel(エクセル)
-
-
4
エクセルマクロで、別のブックが開いているかを判定したいのですが。
その他(Microsoft Office)
-
5
図形のクリアで実行時の1004エラーになる
Visual Basic(VBA)
-
6
VBAでユーザーフォームが自動的に消える
Visual Basic(VBA)
-
7
Application.ScreenUpdating = Falseが効きません
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
UserForm1.Showでエラーになり...
-
VBA データ(特定値)のある最...
-
pythonのopenpyxlについて
-
数式は残し値をクリアするマク...
-
ASPでこんなエラーが出たんです...
-
ACCESSで値を代入できないとは?
-
Excel vbaについての質問
-
VBAでfunctionを利用しようとし...
-
エクセルVBAで#N/Aのようなエ...
-
VBA Find でオートメーションエ...
-
VB6とVB.NETでNullの扱いが違う?
-
ENCAPSED
-
マクロで"#N/A"のエラー行を削...
-
Maximaでのエラーメッセージ
-
paizaで下記コードを提出すると...
-
グラフを表示するとき「’~’メソ...
-
現在、QueryTableが設定されて...
-
フランスの生年月日(jj/mm/aaaa)
-
Filter関数を用いた結果、何も...
-
HTMLソースが表示のページのも...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
UserForm1.Showでエラーになり...
-
String""から型'Double'への変...
-
VBAでfunctionを利用しようとし...
-
【VBA】ワークブックを開く時に...
-
マクロで"#N/A"のエラー行を削...
-
文字列内で括弧を使うには
-
実行時エラー 438 の解決策をお...
-
On ErrorでエラーNoが0
-
お助けください!VBAのファイル...
-
VBA データ(特定値)のある最...
-
インポート時のエラー「データ...
-
実行時エラー'-2147467259(8000...
-
ACCESSで値を代入できないとは?
-
VB.net 重複チェックがしたいです
-
ActiveCell.FormulaR1C1の変数
-
ApplicationとWorksheetFunctio...
-
「実行時エラー '3167' レコー...
-
【VB.NET】 パワポ操作を非表示で
-
フランスの生年月日(jj/mm/aaaa)
-
【マクロ】 IFERROR関数をマク...
おすすめ情報