Run macro if

K

Kashyap

Hi,

I have assigned a macro to an object and I need that object to act as button
only when J20=E2.

i.e; I should be able to run that macro only if J20=E2.
 
J

JLGWhiz

This goes in the sheet code module for the shee with J20=E2.

Private Sub Worksheet_Change(ByVal Targer As Range)
IF Target = Range("J20") Or Target = Range("E2") Then
If Range("J20") = Range("E2") Then
Call 'myMacro
End If
End If
End Sub

When changes are made to either J20 or E2 the procedure will call the macro.
You will need to substitute the actual macro name where 'myMacro appears in
the code above.
 
K

Kashyap

I do not want macro to be called automatically..

What axactly I need is.. if J20=E2, only then that object should work as
button..
 
M

Mike Fogleman

In the macro assigned to your object, make this the first line of code:

If NOT Range("J20").Value = Range("E2").Value Then Exit Sub

Mike F
 
J

JLGWhiz

If you have the macro tied to the object, then you only need to add the If
Then statement which will prevent the macro from running except when the two
ranges are equal.

If Range("J20") = Range("E2") Then
' <<<your macro code here
End If
 
Top