Sub test()
Dim lngLeft As Long
Dim lngTop As Long
Dim lngRight As Long
Dim lngBottom As Long
Dim objShape As Object
' セル範囲の座標取得
With Range("A1:F20")
lngTop = .Top
lngLeft = .Left
lngBottom = .Top + .Height
lngRight = .Left + .Width
End With
' アクティブシートの図形列挙
For Each objShape In ActiveSheet.DrawingObjects
' 範囲内にあるかチェック
With objShape
If lngTop <= .Top And lngLeft <= .Left And _
lngBottom >= .Top + .Height And lngRight >= .Left + .Width Then
' 範囲内にあれば削除
.Delete
End If
End With
Next
End Sub
ありがとうございました
早々の回答、ありがとうございました。
サンプルの動作確認をして希望するものであることを確認しました。
For Each objShape In ActiveSheet.DrawingObjects
next
を使う知恵と.Topなどのプロパティの知識がありませんでした。自分の目的にカスタマイズします。