Smith Dwayne
Smith Dwayne

Reputation: 2797

Excel Condition

I want to write a formula in an Excel. This is my Problem. A1=4, A2=2 . I need to calculate A3=A1+A2 (6). Ok Well. If I change any of the cells A1 or A2 , I need to add the changed value to the Value of A3. That means If I change A1 as 3 , The value of A3 should be Changed as 6+3 = 9. i.e (A3=A3+A1) . How can I do this ?

Upvotes: 0

Views: 63

Answers (1)

Gary's Student
Gary's Student

Reputation: 96753

Put the following event macro in the worksheet code area:

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim A As Range
    Set A = Range("A1:A2")
    Set rr = Intersect(Target, A)
    If rr Is Nothing Then Exit Sub
    Application.EnableEvents = False
        For Each r In rr
            Range("A3").Value = Range("A3").Value + r.Value
        Next r
    Application.EnableEvents = True
End Sub

Because it is worksheet code, it is very easy to install and automatic to use:

  1. right-click the tab name near the bottom of the Excel window
  2. select View Code - this brings up a VBE window
  3. paste the stuff in and close the VBE window

If you have any concerns, first try it on a trial worksheet.

If you save the workbook, the macro will be saved with it. If you are using a version of Excel later then 2003, you must save the file as .xlsm rather than .xlsx

To remove the macro:

  1. bring up the VBE windows as above
  2. clear the code out
  3. close the VBE window

To learn more about macros in general, see:

http://www.mvps.org/dmcritchie/excel/getstarted.htm

and

http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

To learn more about Event Macros (worksheet code), see:

http://www.mvps.org/dmcritchie/excel/event.htm

Macros must be enabled for this to work!

Upvotes: 1

Related Questions