図形を二行三列で一枡とし図形を貼り付けていますが、どうしても実行時エラー
「1004」が出て図形のクリアができません。(尚、四角形は枠線上にあります。)
対処法がありましたらお願いします。
Windows7・SP1 Office2010
Sub 図形の貼付け()
Dim i As Integer
Dim j As Integer
For i = 10 To 43 Step 2
For j = 9 To 99 Step 3
Select Case Cells(i, j).Value
Case 1:
ActiveSheet.Shapes("四角形1").Select
Selection.Copy
Cells(i + 1, j + 1).Select
ActiveSheet.Paste
Case 2:
ActiveSheet.Shapes("四角形2").Select
Selection.Copy
Cells(i + 1, j).Select
ActiveSheet.Paste
Case 4:
ActiveSheet.Shapes("四角形3").Select
Selection.Copy
Cells(i + 1, j + 1).Select
ActiveSheet.Paste
Case 5:
ActiveSheet.Shapes("四角形3").Select
Selection.Copy
Cells(i + 1, j + 2).Select
ActiveSheet.Paste
Case 6:
ActiveSheet.Shapes("円1").Select
Selection.Copy
Cells(i, j).Select
ActiveSheet.Paste
End Select
Next
Next
End Select
End Sub
Sub 図形のクリア()
Dim myRng As Range
Set myRng = Range("I10:CW43")
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
(ここで実行時エラー1004になります。)
Then
sp.Delete
End If
Next
Set myRng = Nothing
End Sub
No.1ベストアンサー
- 回答日時:
shape.TopLeftCellはRangeオブジェクトになるので、
ここではshape.TopLeftCell.Addressとするのでは?
If Not Intersect(Range(sp.TopLeftCell.Address, sp.BottomRightCell.Address), myRng) Is Nothing Then
で通ると思います。
御丁寧な解答ありがとうございます。
全く実行されにのではなく幸いにも正常に動作するバックアップファイルがありますのでご指摘の
コードに書換えて様子を見たいと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) vbaのエラー対応(実行時エラー7:メモリが不足しています) 4 2023/04/24 00:20
- Visual Basic(VBA) 動きっぱなしです。止め方とプロシージャの間違いを教えて下さい! 5 2022/08/15 23:08
- Visual Basic(VBA) Excelで下記のようにマクロを作ったところ、一回目は実行できたのですが、二回目以降「実行時エラー1 1 2022/03/25 08:08
- Visual Basic(VBA) 改行ごとに行を追加し、数量を分割 4 2023/07/11 16:39
- Excel(エクセル) EXCEL マクロで行を挿入して貼り付けようとするとエラーになる。 2 2022/05/24 09:43
- Visual Basic(VBA) ExcelVBAのマクロについて。 9 2022/05/04 14:50
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Visual Basic(VBA) エラーコード1004 6 2022/06/09 14:12
- Excel(エクセル) マクロで最終行から上に検索を逆にしたい 1 2022/05/17 18:27
- Visual Basic(VBA) 別シートから年齢別の件数をカウントしたいの続き 5 2023/01/24 00:16
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAでFormat がうまく使えない
-
NET USE コマンドでエ...
-
W3CのCSS検証エラーについて
-
Debug Assertion Failed?
-
Access VBA アクセスエラー
-
Access ADOで文字列を日付型へi...
-
ファイルのダウンロード時のエ...
-
【Adobe Premiere Element 2.0...
-
図形のクリアで実行時の1004エ...
-
Subversionのリポジトリでが壊...
-
アクセス2019入力規則、規...
-
プレスするDVDは、二層か一...
-
LTspiceのTime Stepエラーについて
-
ファイルのダウンドードでエラー
-
動画作成について
-
DVDシュリンクで…エラーが!!
-
ASPでoo4o接続ができません。
-
アプリストア インストールミ...
-
EXCELを開くとエラーがでます。
-
C# HttpWebRequestのエラーにつ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAでFormat がうまく使えない
-
Debug Assertion Failed?
-
NET USE コマンドでエ...
-
POV-Ray についての質問です!
-
Excel ファイルに保存すると実...
-
不明なソフトウェア例外(0xe06...
-
ホームページビルダーの”全体の...
-
シェルスクリプトの実行エラー...
-
vbaでファイルを開くパス名に変...
-
エラーコード 70 「書き込み...
-
図形のクリアで実行時の1004エ...
-
ACCESS VBAのOpenForm書き方
-
Web.Config 構成ファイルのエラー
-
Access ADOで文字列を日付型へi...
-
C# HttpWebRequestのエラーにつ...
-
LTspiceのTime Stepエラーについて
-
bcpadがうまく実行できないので...
-
VB5のEXEの起動時エラー
-
xmlドキュメントから別拡張子で...
-
VBAで印刷するとエラーになって...
おすすめ情報