working with hours in xs of 24
Aren't your source values in cells in the worksheet stored as time values?
Why are you then using strings?
myTime = Application.Text(application.Sum(Range("A1:A2")),"[h]:mm")
In any event, do your math with the timeserial numbers. Only use strings
for display purposes.
--
Regards,
Tom Ogilvy
"Graham Y" wrote in message
...
Thanks Bob it works whilst the running total is under 24 hours, but when I
get to say "30:00" + "10:00:00" it fails type mismatch any ideas?
"Bob Phillips" wrote:
In VBA you have to use the worksheet TEXT function
myTime = Application.Text(d1 + d2, "[h]:mm")
--
HTH
Bob Phillips
(replace xxxx in the email address with gmail if mailing direct)
"Graham Y" wrote in message
...
Hi
On a timesheet form I collect start and end times, I want to display
the
hours against each day (no problems) and I want to show the running
total,
for visual error checking. In a cell I would use the format [h]:mm but
this
doesn't work in VBA, d1 & d2 = "18:00:00" format(d1+d2,"[h]:mm") gives
:12
take out the [] and I get 31/12/1899 12:00:00 and what I want is to
display
36:00 in a lable
I've been trying to convert the value in the lable, but I can't do
Csng(lbl)
the function won't convert a String to a Single. How can I get around
this?
Cdate() checks for a valid date format and then does a conversion, so
if
the
hours are <24
if d1="18:00" I can do x= Csng(Cdate(d1)) and get x=18 but it doesn't
work
if d1="36:00"
I'm open to alternative suggestions, but I'd rather not have to write
an
interim value back to the spreadsheet, just seems clumsy.
TIA
|