Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations cowski on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

Run macro from cell result

Status
Not open for further replies.

alanhov

Mechanical
Joined
Jun 30, 2001
Messages
1
Location
AU
Is there any way to get a VBA procedure (macro) to run automatically based upon the logical result of a spreadsheet formula cell. I need to test a field value and if true then change the properties of several cells , and later reset the same properties if the valeu is something else.

I do not want the user to push buttons, or use the macro menu.



alanH
 
Alanhov.

You could use the "Change Event" in VBA. See the example below. In this example, cell A2 gets value 1 if cell A1 is "TRUE", otherwise it gets value 2. Procedure is run every time the worksheet is changed, so no buttons are required.

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
addr = Target.Address
If Not (addr = "$A$1") Then Exit Sub
If [A1].Value Then [A2].Value = 1 Else [A2].Value = 2
End Sub 'WorkSheet_Change
 
After testing the example above, if found that you have to delete the third line, otherwise it will only work if you actually type TRUE or FALSE into cell A1. So the example becomes:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
addr = Target.Address
If [A1].Value Then [A2].Value = 1 Else [A2].Value = 2
End Sub 'WorkSheet_Change

 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top