Regular Time and Over Time
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Const WS_RANGE As String = "B:B"
On Error GoTo ws_exit:
Application.EnableEvents = False
If Not Intersect(Target, Me.Range(WS_RANGE)) Is Nothing Then
With Target
If .Value 8 Then
.Offset(0, 1).Value = .Value - 8
.Value = 8
End With
End If
ws_exit:
Application.EnableEvents = True
End Sub
'This is worksheet event code, which means that it needs to be
'placed in the appropriate worksheet code module, not a standard
'code module. To do this, right-click on the sheet tab, select
'the View Code option from the menu, and paste the code in.
--
HTH
RP
(remove nothere from the email address if mailing direct)
"Marhanen" wrote in message
...
I am working with a spreadsheet that contains whole hour times for
Regular,
Over, Sick and Vacation times. When 9 is placed in Regular time, I want
the
number to remain at the max number of 8 hours Regular time, moving the 1
hour
Over time into the next cell.
Reg Over Sick Vacation
Monday 9 1 0 0
Tuesday 8
When I type that 9 in, I am looking for a function or VBA code that can
automatically make it 8 and move the 1 over. I have figured out how to
move
the 1 over using =IF(C88,C8-8,"-") but it would be nice to be able to
type
that 9 and it will automatically make it 8 and then a 1 goes into the Over
column.
Any suggestions? Thanks!
|