Runtime Error 1004
On Dec 24, 11:46*am, JB Bates
wrote:
I have a workbook that contains 100 worksheets. *On each work sheet I have
the following code (see below) that runs and when a particular person is
selected from a drop down list a jpg of their signature displays at the top
of each sheet. *
This was working fine but I am now getting the following error after I
select a person from the drop down and then when ever i try to input data
into any other cell. *The error message is:
Runtime Error '1004'" Unable to set the top property of the picture class
It then allows me to END or debug. *if i select debug it opens the VBA
window to the code and highlights this line
oPic.Top = .Top
But i don't know what to to do with that line of code to debug
PLEASE HELP
thanks in advance - JB
* * Private Sub Worksheet_Calculate()
* * * * Dim oPic As Picture
* * * * Me.Pictures.Visible = False
* * * * With Range("ad1")
* * * * * * For Each oPic In Me.Pictures
* * * * * * * * If oPic.Name = .Text Then
* * * * * * * * * * oPic.Visible = True
* * * * * * * * * * oPic.Top = .Top
* * * * * * * * * * oPic.Left = .Left
* * * * * * * * * * Exit For
* * * * * * * * End If
* * * * * * Next oPic
* * * * End With
* * End Sub
Strange!
I replied and it appeared. An hour later my reply has disappeared.
I'll try again.
I've seen these problem a few time in the past and the solution was to
avoid dimensioning with the Picture object and using the Shape object
instead.
It does introduce the need for a loop to avoid hiding all shapes
though.
Try...
Private Sub Worksheet_Calculate()
Dim Pic As Shape
For Each Pic In Me.Shapes
If Pic.Type = msoPicture Then
Pic.Visible = False
End If
Next Pic
With Range("AD1")
For Each Pic In Me.Shapes
If Pic.Name = .Text Then
Pic.Visible = True
Pic.Top = .Top
Pic.Left = .Left
Exit For
End If
Next Pic
End With
End Sub
Ken Johnson
|