Automatically Record Date in a cell

B

bhen

Im am using excell 2007, and im doing my progress report spread sheet.What
exactly i need is: I am inputing percentage in a series of rows and i want an
automatic formula in a single cell that will record the date when i started
inputing percentage and also the date when it is done(or shall i say the
total is already 100 %.
Please help me about this it will save me a lot of time doing my reports..
 
G

Gary''s Student

Here is a typical example that you can modify for your needs. Say in column
B we enter the percentage. We want the start date to appear in column C and
remain unchanged until 100% is entered in column B. Then the date in column
C will become the finish date and remain static. Enter the following event
macro in the worksheet code area:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim t As Range, r As Range, rC As Range
Set t = Target
Set rC = t.Offset(0, 1)
Set r = Range("B:B")
If Intersect(t, r) Is Nothing Then Exit Sub
v = t.Value
If IsEmpty(rC) Then
Application.EnableEvents = False
rC.Value = Date
Application.EnableEvents = True
End If
If t.Value < 1 Then Exit Sub
Application.EnableEvents = False
rC.Value = Date
Application.EnableEvents = True
End Sub


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

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

If you save the workbook, the macro will be saved with it.

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

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

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

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top