Run code on "IF" formula result change
Change does not run as the result of formulas being updated. That leaves you
with 2 options. One is to check the Precedents of F30 and the other is to
check F28, E30 and G30... Give this a try...
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("F30").Precedents) Is Nothing and
Range("F30").Value = "SaveFile" Then
Call MessageBoc
End If
End Sub
--
HTH...
Jim Thomlinson
"SJW_OST" wrote:
I have a formula that changes depending on if the calculation result is
between 2 cell results.
=IF(AND($F$28=E30,$F$28<=G30),"SaveFile","DoNothi ng")
This formula is in cell F30
E30 = 12:00:00
G30 = 12:20:59
I have a timer that is tied to $F$28 which updates the time periodically.
When the time in $F$28 is between E30 & G30, the "IF" formula changes to
"SaveFile". When this happens I want a macro of my choosing to run.
I have tried inputing the following to the specific sheet the formula is on;
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$F$30" And Target.Value = "SaveFile" Then
Call MessageBoc
End If
End Sub
But this does not work. I tried changing Target.Value to Target.FormulaR1C1,
I have tried writing a regular module sub, I have tried everything my limited
mind can think of.
How can I get a macro to run when an "IF" formula result changes to
something specified?
Please help, Thank you in advance!
|