Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3
Default Handling hhmmss time format

Hi,

I have a bit of a problem with the time formatting in excel, or rather
the handling of the same for the data that I have.

I have a big file, that has different counters separated by comma
(essentially a csv file). Here's a sample of a line in those files:

GPRS1,20120205,110000,gnctx,4,gprs,
3430,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ,0,0,0,0,0,0,0

The third field (110000) in this example, is the timestamp.

GPRS1,20120206,004500,gnctx,
4,,65536,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ,0,0,0,0,0,0,0,0,0
GPRS1,20120206,001500,gnctx,4,gprs,
790,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0

GPRS1,20120206,020000,gnctx,4,gprs,
54004,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0

Now I could happily plot the graph with these values, ONLY if Excel
would not strip the leading zeros from the timestamp in samples like
the latter 3 mentioned above. For a timestamp of 004500, Excel strips
the leading zeros and shows 4500. For timestamp 013000, it displays
the value as 13000. For a timestamp of 000000, it just shows 0! That
messes up the whole timestamps when I try to plot the graph, and just
cannot get to do what I want to.

I've tried many tricks, including setting the Custom format to
"number" of format "000000". That "displays" the field correctly, but
when I perform any operation, it still uses the originally displayed
value.

I don't understand why is Excel ignoring the leading zeros in the
first place, when the original value itself has leading zeros. Even
when I set the formatting to "Text", it still would strip the leading
zeros.

I've been breaking my head on this since last one week, but haven't
been able to get this work. Could someone help please?

Regards,
Deepak
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 259
Default Handling hhmmss time format

On 15/02/2012 8:30 AM, Deepak Tulsani wrote:
Hi,

I have a bit of a problem with the time formatting in excel, or rather
the handling of the same for the data that I have.

I have a big file, that has different counters separated by comma
(essentially a csv file). Here's a sample of a line in those files:

GPRS1,20120205,110000,gnctx,4,gprs,
3430,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ,0,0,0,0,0,0,0

The third field (110000) in this example, is the timestamp.

GPRS1,20120206,004500,gnctx,
4,,65536,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ,0,0,0,0,0,0,0,0,0
GPRS1,20120206,001500,gnctx,4,gprs,
790,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0

GPRS1,20120206,020000,gnctx,4,gprs,
54004,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0

Now I could happily plot the graph with these values, ONLY if Excel
would not strip the leading zeros from the timestamp in samples like
the latter 3 mentioned above. For a timestamp of 004500, Excel strips
the leading zeros and shows 4500. For timestamp 013000, it displays
the value as 13000. For a timestamp of 000000, it just shows 0! That
messes up the whole timestamps when I try to plot the graph, and just
cannot get to do what I want to.

I've tried many tricks, including setting the Custom format to
"number" of format "000000". That "displays" the field correctly, but
when I perform any operation, it still uses the originally displayed
value.

I don't understand why is Excel ignoring the leading zeros in the
first place, when the original value itself has leading zeros. Even
when I set the formatting to "Text", it still would strip the leading
zeros.

I've been breaking my head on this since last one week, but haven't
been able to get this work. Could someone help pleasing thee?

Regards,
Deepak


Hi Deepak

As I am using 2010, it maybe a little different for earlier versions
having said that! I used your data and created a CSV File and used the
manual "Import from Text" button on the ribbon and selected the time
field column and changed it to TEXT and it imported with the leading zeros.

I'm fairly certain you can use VB to do this and extract the converted
time conversion value all at the same time.

As for converting it to time(hh:mm:ss), try this.

=LEFT(A1,2)&":"&MID(A1,3,2)&":"&RIGHT(A1,2)

Using your 3 time example, they should return the following:

00:45:00, 01:30:00 & 00:00:00

HTH
Mick.



  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3
Default Handling hhmmss time format

On Feb 15, 12:21*pm, Vacuum Sealed wrote:
On 15/02/2012 8:30 AM, Deepak Tulsani wrote:









Hi,


I have a bit of a problem with the time formatting in excel, or rather
the handling of the same for the data that I have.


I have a big file, that has different counters separated by comma
(essentially a csv file). Here's a sample of a line in those files:


GPRS1,20120205,110000,gnctx,4,gprs,
3430,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0


The third field (110000) in this example, is the timestamp.


GPRS1,20120206,004500,gnctx,
4,,65536,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
GPRS1,20120206,001500,gnctx,4,gprs,
790,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0 ,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0


GPRS1,20120206,020000,gnctx,4,gprs,
54004,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0 ,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0


Now I could happily plot the graph with these values, ONLY if Excel
would not strip the leading zeros from the timestamp in samples like
the latter 3 mentioned above. For a timestamp of 004500, Excel strips
the leading zeros and shows 4500. For timestamp 013000, it displays
the value as 13000. For a timestamp of 000000, it just shows 0! That
messes up the whole timestamps when I try to plot the graph, and just
cannot get to do what I want to.


I've tried many tricks, including setting the Custom format to
"number" of format "000000". That "displays" the field correctly, but
when I perform any operation, it still uses the originally displayed
value.


I don't understand why is Excel ignoring the leading zeros in the
first place, when the original value itself has leading zeros. Even
when I set the formatting to "Text", it still would strip the leading
zeros.


I've been breaking my head on this since last one week, but haven't
been able to get this work. Could someone help pleasing thee?


Regards,
Deepak


Hi Deepak

As I am using 2010, it maybe a little different for earlier versions
having said that! I used your data and created a CSV File and used the
manual "Import from Text" button on the ribbon and selected the time
field column and changed it to TEXT and it imported with the leading zeros.

I'm fairly certain you can use VB to do this and extract the converted
time conversion value all at the same time.

As for converting it to time(hh:mm:ss), try this.

=LEFT(A1,2)&":"&MID(A1,3,2)&":"&RIGHT(A1,2)

Using your 3 time example, they should return the following:

00:45:00, 01:30:00 & 00:00:00

HTH
Mick.


Ohh good heavens! That's great Mick, thanx a million for that. Atleast
now I can see the whole data in the correct format as was in the
original file. I'll try your formula along with probably the TIME
function, so that all data is directly converted to an "Excel
understandable" time format in one single go. Thanx a million for this
lead. I'll revert back with an update.

Regards,
Deepak
  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3,514
Default Handling hhmmss time format

Assuming that each record in the CSV is on a single line as apposed to
how it appears in my newsreader, have you tried opening the file via
VBA and formatting the data BEFORE dumping it into the worksheet?

Typically, values exported to a CSV are plain text and therefore are
'unformatted' as to data 'type'. This presents Excel's import wizard to
'guess' what the data type is. I find it's ALWAYS better to format
before committing any data to the sheet. In your case, the data needs
to be changed to "00:45:00" so it will be interpreted as time. Same
holds true for your 8-digit date format. IF it was mmddyyyy then you'd
have a similar issue for the first 9 months of any year. Likewise, if
it was ddmmyyyy you get same results for first 9 days of any month.

Maybe in your case you can get away with a custom format of "00:00:00"!

--
Garry

Free usenet access at http://www.eternal-september.org
ClassicVB Users Regroup! comp.lang.basic.visual.misc


  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3
Default Handling hhmmss time format

On Feb 15, 1:20*pm, GS wrote:
Assuming that each record in the CSV is on a single line as apposed to
how it appears in my newsreader, have you tried opening the file via
VBA and formatting the data BEFORE dumping it into the worksheet?

Typically, values exported to a CSV are plain text and therefore are
'unformatted' as to data 'type'. This presents Excel's import wizard to
'guess' what the data type is. I find it's ALWAYS better to format
before committing any data to the sheet. In your case, the data needs
to be changed to *"00:45:00" *so it will be interpreted as time. Same
holds true for your 8-digit date format. IF it was mmddyyyy then you'd
have a similar issue for the first 9 months of any year. Likewise, if
it was ddmmyyyy you get same results for first 9 days of any month.

Maybe in your case you can get away with a custom format of "00:00:00"!

--
Garry

Free usenet access athttp://www.eternal-september.org
ClassicVB Users Regroup! comp.lang.basic.visual.misc


Hi Gary,

Custom format "00:00:00" didn't seem to work for some reason. But the
solution that Mick provided, worked perfect! Its a little bit of
additional work for me to select the format, but as long as it works,
i'm happy with that extra bit!

Thanx a lot Mick and Gary for your feedbacks!

Regards,
Deepak


  #6   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3,514
Default Handling hhmmss time format

Deepak Tulsani expressed precisely :
On Feb 15, 1:20*pm, GS wrote:
Assuming that each record in the CSV is on a single line as apposed to
how it appears in my newsreader, have you tried opening the file via
VBA and formatting the data BEFORE dumping it into the worksheet?

Typically, values exported to a CSV are plain text and therefore are
'unformatted' as to data 'type'. This presents Excel's import wizard to
'guess' what the data type is. I find it's ALWAYS better to format
before committing any data to the sheet. In your case, the data needs
to be changed to *"00:45:00" *so it will be interpreted as time. Same
holds true for your 8-digit date format. IF it was mmddyyyy then you'd
have a similar issue for the first 9 months of any year. Likewise, if
it was ddmmyyyy you get same results for first 9 days of any month.

Maybe in your case you can get away with a custom format of "00:00:00"!

--
Garry

Free usenet access athttp://www.eternal-september.org
ClassicVB Users Regroup! comp.lang.basic.visual.misc


Hi Gary,

Custom format "00:00:00" didn't seem to work for some reason. But the
solution that Mick provided, worked perfect! Its a little bit of
additional work for me to select the format, but as long as it works,
i'm happy with that extra bit!

Thanx a lot Mick and Gary for your feedbacks!

Regards,
Deepak


Mick's suggestion works because the cells are formatted as 'Text',
meaning you can't directly use the contents in calculations. My
suggestion was in the context of using VBA to read, revise, and write
the data to the worksheet. That's how I do it and dates/times display
correctly AND also work in formulas because Excel recognizes the values
as Dates and Time.

--
Garry

Free usenet access at http://www.eternal-september.org
ClassicVB Users Regroup! comp.lang.basic.visual.misc


  #7   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3,514
Default Handling hhmmss time format

Just for clarity, I set colA format to 'Time' as hh:mm:ss. I then set
colB format to 'Custom' as hh:mm:ss. I then selected 8 rows in those
cols and hit the keyboard shortcut to enter the current time
(Ctrl+Shift+:). Both columns displayed identically.

I then entered in colB the text "21:47:00" and it displayed 00:00:00
because Excel converted it to midnight 5/24/1900.

I checked my addins that use date/time as read from a CSV file to see
exactly how I got it to work. Here's what I found...

Target cells are formatted to 'Time' as "hh:mm:ss".

NumberFormat = "[h]:mm:ss;@"

The times are converted to TimeValue in 1 VBA project.
In this case, TIMEVALUE("21:47:00") returns 0.907639 as that's its
respective fractional value of a day. (Day=1.0)

When you dump 0.907639 into a cell that's formatted to 'Time' as
hh:mm:ss it displays 21:47:00

The other projects don't convert to TimeValue and so just enter the
time as "21:47:00", which is a literal string.

What's important is that the cells are preformatted and the data
contains the colons so that recognizes it as time (the entire string
has 8 characters). Basically, this is done the same way Mick suggests
but in VBA using the Mid$() function only...

vaData(i, n) = Mid$(vaData(i, n), 1, 2) & ":" _
& Mid$(vaData(i, n), 3, 2) & ":" _
& Mid$(vaData(i, n), 5, 2)

Dates are handle the same way using "/" as the delimiter.

--
Garry

Free usenet access at http://www.eternal-september.org
ClassicVB Users Regroup! comp.lang.basic.visual.misc


Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
How to type format time in decimal format & calculate time Cheyenne Excel Discussion (Misc queries) 1 February 13th 09 12:09 AM
Formatting Time As hhmmss Gives Me Dates Instead? Donna Excel Worksheet Functions 3 April 4th 07 05:14 PM
ODBC Run-Time Error Handling Help MikeElectricUtility Excel Programming 5 February 16th 07 04:28 PM
Excel VBA rounding / time handling questions GSpline Excel Programming 5 September 14th 05 12:08 AM
Error handling with a handling routine ben Excel Programming 0 March 15th 05 03:01 PM


All times are GMT +1. The time now is 05:22 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©2004-2025 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"