Can I program to insert current time when an a cell is filled?

A

Amber

I'm trying to write a program to log time spent doing certain things. Is
there a way to have Excel insert the current time (Ctrl+Shift+;) when the
cell next to it is given a value(in this case, a category such as
organization)? I'd then like to have Excel keep track of how much time is
spent doing each thing throughout the day.
 
G

Gary''s Student

Here is an example using column A and B. When an entry is made in column A,
the time is recorded in column B. Put this event macro in the worksheet code
area:

Private Sub Worksheet_Change(ByVal Target As Range)
Set t = Target
Set a = Range("A:A")
If Intersect(t, a) Is Nothing Then Exit Sub
If t.Value = "" Then Exit Sub
Application.EnableEvents = False
t.Offset(0, 1).Value = Now - Int(Now)
t.Offset(0, 1).NumberFormat = "h:mm AM/PM"
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