Change events puzzle me...

Posted on 2014-01-22
Last Modified: 2014-01-27
I have been learning vba now for about 1 year and the light is slowly going on but not burning bright at I am still very "beginner-ish" but am getting better.

In that time I have gotten to know how to handle ranges and rows quite well per my previous lot of questions.

Having said that I have come to somewhat of a cross roads with my project and I have to wonder is there a better way.

Having said that I am going to describe in detail what I am trying to do and see if there is indeed a better way.

So without further adieu here is what I have.

I have a  data set that dynamically changing all of the time.

Let's say that there are 1000 rows.

What I want to know is:

Let's say that there is a change in the row 24, column G.  Let's say that in Column G there is a simple formula that says if e24>f24 then 1, otherwise "".  Well, e24 suddenly = 9 and there is nothing in f24 so G24 = 1.  This is the kick off to the change event.   The rest of the code after this I am handle.  I even have the code needed to "reset" G24 for the next time.

What I do not need is for any other row to be affected whatsoever.  I am only interested in row 24 because G24 fired.

Now if G56, which also has a similar formula to G24 (all cells in column G do between G10:G1010) then I would like to see a change for only things in row 56.

...and so on down the whole range.


I was playing around with:

Range("G10:G1010").specialcells(xlCellsTypeFormula, 2).Calculate = "1"

...but I am not sure how to manipulate it further than that.

So in short, I need a "change event" or "calculate event" or something else that is lightning fast for these ranges.   What ever happen in that particular row on affects that particular row and the rest of the range is unaffected.

Any help or illumination on this problem would be much appreciated.

Question by:BostonBob
  • 3
  • 2
LVL 29

Expert Comment

ID: 39802290
Sorry your post is too confusing and long. I read it twice and lost between what is and what should and what you want.

Can you in 1 sentence ask a question on what exactly you want ?
LVL 32

Expert Comment

by:Robberbaron (robr)
ID: 39802324
the Workbook_SheetChange event provides a Target range property that you can interrogate to get the cell that has changed.

There is also a Worksheet_Change event, attached to each worksheet but often easier to trap the workbook event and then filter out the sheets that need to be checked.

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
    MsgBox "chaneg - " & Target.Address
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)

End Sub

Open in new window

note that only cells that get changed 'manually' trigger the event. Cells that change due to formula do not trigger event.
LVL 29

Accepted Solution

gowflow earned 500 total points
ID: 39802391
I would add on:

note that only cells that get changed 'manually' trigger the event. Cells that change due to formula do not trigger event.

That if the event is a Calculate event then YES [Cells that change due to formula WILL trigger event.]

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.


Author Comment

ID: 39802735

You are working on my other solution.

In one sentence:  In my other solution, there an overall better way to accomplish what I am trying to do there?   (All of this will be automated, that test10 sheet is just an example).


Author Comment

ID: 39808380
So in my other sheet I have something that will automatically make a change event.   Not manually.  

But is there a different way all together?  Willing to try new options!

LVL 29

Expert Comment

ID: 39811303
Thank you for the appreciation. You may put your comments in the other question that  I will keep open this one will not be monitored.

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Some code to ensure data integrity when using macros within Excel. Also included code that helps secure your data within an Excel workbook.
Excel can be a tricky bit of software to get your head around. Whilst you’ll be able to eventually get to grips with the basic understanding of how to get by, there are a few Excel tips that not everybody will even know about let alone know how to d…
This Micro Tutorial demonstrates in Microsoft Excel how to consolidate your marketing data by creating an interactive charts using form controls. This creates cool drop-downs for viewers of your chart to choose from.
Many functions in Excel can make decisions. The most simple of these is the IF function: it returns a value depending on whether a condition you describe is true or false. Once you get the hang of using the IF function, you will find it easier to us…

838 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question