View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
fedude fedude is offline
external usenet poster
 
Posts: 74
Default Delete multiple pictures on top of a range?

Nevermind... I found the answer in a previous post. Should have looked
more thoroughly

==================

Sub ClearScorecard()

Dim s As String
Dim pic As Picture
Dim rng As Range

' Set ws = ActiveSheet
Set ws = ActiveWorkbook.Worksheets("Sheet1")
Set rng = ws.Range("A20:J39")

For Each pic In ActiveSheet.Pictures
With pic
s = .TopLeftCell.Address & ":" & .BottomRightCell.Address
End With
If Not Intersect(rng, ws.Range(s)) Is Nothing Then
pic.Delete
End If
Next
End Sub

=================================

"fedude" wrote:

With the enormous help of this forum I created a routine to copy a single
picture multiple times on top of a 10x14 range of cells (it's a golf
scorecard). The picture is a large circle to identify which hole gets
strokes for handicaps. I notice that every time I copy a picture it gets
the next "picture xxxx" sequence name. Not sure if this is pertinent or not.

After I print the scorecard, I need to delete the pictures and start again.
Does anyone know a way to delete pictures that happen to be laying on top of
a range? With a mouse I manually can select the picture and hit "delete",
but how can I do this in a VB subroutine that I can call from my macro?