run macro on a condition

  • Thread starter tkraju via OfficeKB.com
  • Start date
T

tkraju via OfficeKB.com

In my w/sheet I have number of calculated fields basing on formulas linkedto
this sheet as well as other sheets of same w/book.I have 3 macros also.I
would like to run a macro if a particular cell value in w/sheet changes.Say ,
If whenever I changescell G1 value macro1 should run.
 
P

Per Jessen

Hi TK

Use an event code to trap changes in your worksheet. This code will only
fire if you enter a value in your worksheet not if the change is due to a
calculation.

The code is to be pasted into the code sheet for the desired worksheet.

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$G$1" Then
Call Macro1
End If
End Sub

Regards,
Per
 
T

tkraju via OfficeKB.com

I have datavalidation list In Cell G1, and the list is a named range of
different sheet.I have one macro that updates data every time.Ihave second
macro(w/sheet_change) which runs by changing cell value G1.when ever I am
changing cell value G1 ,the firstmacro is not running properly.
 
T

tkraju via OfficeKB.com

Hi Per
If I write like this will it work:
If Target.Address="$G$1" Or "$H$1" Then
I want to change any of two cells.
 
P

Per Jessen

Hi

You could use
If Target.address =="$G$1" Or Target.address "$H$1" Then

But I would use this as it is more flexible as it can be used on larger
ranges:

If Not Intersect(Target, Range("G1:H1") Is Nothing Then

-Per
 
T

tkraju via OfficeKB.com

If Not Intersect(Target,Range("G1:H1") Is Nothing Then
this giving me error

Per said:
Hi

You could use
If Target.address =="$G$1" Or Target.address "$H$1" Then

But I would use this as it is more flexible as it can be used on larger
ranges:

If Not Intersect(Target, Range("G1:H1") Is Nothing Then

-Per
Hi Per
If I write like this will it work:
[quoted text clipped - 24 lines]
 
P

Per Jessen

The line miss a closing paranthesis:

If Not Intersect(Target,Range("G1:H1")) Is Nothing Then

-Per

tkraju via OfficeKB.com said:
If Not Intersect(Target,Range("G1:H1") Is Nothing Then
this giving me error

Per said:
Hi

You could use
If Target.address =="$G$1" Or Target.address "$H$1" Then

But I would use this as it is more flexible as it can be used on larger
ranges:

If Not Intersect(Target, Range("G1:H1") Is Nothing Then

-Per
Hi Per
If I write like this will it work:
[quoted text clipped - 24 lines]
changes.Say ,
If whenever I changescell G1 value macro1 should run.
 
Top