Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 32
Default Unwanted number format conversion

I recently wasted debugging time on a perfectly good macro. The problem
turned out to be Excel: when I manually changed a cell from a value that
looked like a number to another value that looked like a number, Excel
automatically converted the cell's NumberFormat from Text to Number. This
caused a routine that compares cell contents between different worksheets to
fail, because "0399" < 399.

I'm sure most programmers would agree that an application that reassigns
data types without warning the user is arrogant and inconsiderate in the
extreme.

Can I turn this feature off?




  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3,942
Default Unwanted number format conversion

hi,
if the cell(s) is formated to general or number, excel will do this. to
"turn this feature off", format the cell(s) in question to text.

Regards
FSt1

"Allen_N" wrote:

I recently wasted debugging time on a perfectly good macro. The problem
turned out to be Excel: when I manually changed a cell from a value that
looked like a number to another value that looked like a number, Excel
automatically converted the cell's NumberFormat from Text to Number. This
caused a routine that compares cell contents between different worksheets to
fail, because "0399" < 399.

I'm sure most programmers would agree that an application that reassigns
data types without warning the user is arrogant and inconsiderate in the
extreme.

Can I turn this feature off?




  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 4,624
Default Unwanted number format conversion

XL's input parser is very consistent in how it treats inputs - it treats
values that look like numbers as numbers unless the cell is preformatted
as Text, or the input is prefixed by an apostrophe (').

Not sure what you see as arrogant...


In article ,
Allen_N wrote:

I recently wasted debugging time on a perfectly good macro. The problem
turned out to be Excel: when I manually changed a cell from a value that
looked like a number to another value that looked like a number, Excel
automatically converted the cell's NumberFormat from Text to Number. This
caused a routine that compares cell contents between different worksheets to
fail, because "0399" < 399.

I'm sure most programmers would agree that an application that reassigns
data types without warning the user is arrogant and inconsiderate in the
extreme.

Can I turn this feature off?

  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 32
Default Unwanted number format conversion

Hi JE, FSt1...

Okay, please Try this.

Format a cell as text, and enter "03". Then, copy and paste this cell to the
one on the right. Then, in the new cell, change "03" to "04". When I do it,
the format of the cell changes from Number to text and the contents become
"4".

By "arrogant" I mean that it seems as though the Excel programmers want to
coerce our data into the format they think it should be, rather than what we
have explicitly typed it to be. I could be wrong; it may just be a bug.

Thanks for the advice. Please let me know if things look different to you now.

"JE McGimpsey" wrote:

XL's input parser is very consistent in how it treats inputs - it treats
values that look like numbers as numbers unless the cell is preformatted
as Text, or the input is prefixed by an apostrophe (').

Not sure what you see as arrogant...


In article ,
Allen_N wrote:

I recently wasted debugging time on a perfectly good macro. The problem
turned out to be Excel: when I manually changed a cell from a value that
looked like a number to another value that looked like a number, Excel
automatically converted the cell's NumberFormat from Text to Number. This
caused a routine that compares cell contents between different worksheets to
fail, because "0399" < 399.

I'm sure most programmers would agree that an application that reassigns
data types without warning the user is arrogant and inconsiderate in the
extreme.

Can I turn this feature off?


  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 35,218
Default Unwanted number format conversion

When I tried it, 04 stayed 04 and the cell was still formatted as text.

You sure you didn't do something else?

Allen_N wrote:

Hi JE, FSt1...

Okay, please Try this.

Format a cell as text, and enter "03". Then, copy and paste this cell to the
one on the right. Then, in the new cell, change "03" to "04". When I do it,
the format of the cell changes from Number to text and the contents become
"4".

By "arrogant" I mean that it seems as though the Excel programmers want to
coerce our data into the format they think it should be, rather than what we
have explicitly typed it to be. I could be wrong; it may just be a bug.

Thanks for the advice. Please let me know if things look different to you now.

"JE McGimpsey" wrote:

XL's input parser is very consistent in how it treats inputs - it treats
values that look like numbers as numbers unless the cell is preformatted
as Text, or the input is prefixed by an apostrophe (').

Not sure what you see as arrogant...


In article ,
Allen_N wrote:

I recently wasted debugging time on a perfectly good macro. The problem
turned out to be Excel: when I manually changed a cell from a value that
looked like a number to another value that looked like a number, Excel
automatically converted the cell's NumberFormat from Text to Number. This
caused a routine that compares cell contents between different worksheets to
fail, because "0399" < 399.

I'm sure most programmers would agree that an application that reassigns
data types without warning the user is arrogant and inconsiderate in the
extreme.

Can I turn this feature off?



--

Dave Peterson


  #6   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 35,218
Default Unwanted number format conversion

ps. I used xl2003 to test. But I don't recall ever seeing numberformats change
when I've done something like this.

Allen_N wrote:

Hi JE, FSt1...

Okay, please Try this.

Format a cell as text, and enter "03". Then, copy and paste this cell to the
one on the right. Then, in the new cell, change "03" to "04". When I do it,
the format of the cell changes from Number to text and the contents become
"4".

By "arrogant" I mean that it seems as though the Excel programmers want to
coerce our data into the format they think it should be, rather than what we
have explicitly typed it to be. I could be wrong; it may just be a bug.

Thanks for the advice. Please let me know if things look different to you now.

"JE McGimpsey" wrote:

XL's input parser is very consistent in how it treats inputs - it treats
values that look like numbers as numbers unless the cell is preformatted
as Text, or the input is prefixed by an apostrophe (').

Not sure what you see as arrogant...


In article ,
Allen_N wrote:

I recently wasted debugging time on a perfectly good macro. The problem
turned out to be Excel: when I manually changed a cell from a value that
looked like a number to another value that looked like a number, Excel
automatically converted the cell's NumberFormat from Text to Number. This
caused a routine that compares cell contents between different worksheets to
fail, because "0399" < 399.

I'm sure most programmers would agree that an application that reassigns
data types without warning the user is arrogant and inconsiderate in the
extreme.

Can I turn this feature off?



--

Dave Peterson
  #7   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 4,624
Default Unwanted number format conversion

What version of XL are you using?

I tried to reproduce your steps with Mac XL 98, 01, v.X and 2004, and
WinXL 03. Formatted A1 as Text. Entered 03. Copied A1 and pasted into
B1. The Text format was copied to B1. Entered 04 in B1, the format in B1
remained Text in all versions.


In article ,
Allen_N wrote:

Hi JE, FSt1...

Okay, please Try this.

Format a cell as text, and enter "03". Then, copy and paste this cell to the
one on the right. Then, in the new cell, change "03" to "04". When I do it,
the format of the cell changes from Number to text and the contents become
"4".

By "arrogant" I mean that it seems as though the Excel programmers want to
coerce our data into the format they think it should be, rather than what we
have explicitly typed it to be. I could be wrong; it may just be a bug.

Thanks for the advice. Please let me know if things look different to you
now.

  #8   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 227
Default Unwanted number format conversion

I can't reproduce this behavior in XL2003 or XL97. There must be
something else happening.

Mark Lincoln

On May 28, 2:40 am, Allen_N wrote:
Hi JE, FSt1...

Okay, please Try this.

Format a cell as text, and enter "03". Then, copy and paste this cell to the
one on the right. Then, in the new cell, change "03" to "04". When I do it,
the format of the cell changes from Number to text and the contents become
"4".

By "arrogant" I mean that it seems as though the Excel programmers want to
coerce our data into the format they think it should be, rather than what we
have explicitly typed it to be. I could be wrong; it may just be a bug.

Thanks for the advice. Please let me know if things look different to you now.



"JE McGimpsey" wrote:
XL's input parser is very consistent in how it treats inputs - it treats
values that look like numbers as numbers unless the cell is preformatted
as Text, or the input is prefixed by an apostrophe (').


Not sure what you see as arrogant...


In article ,
Allen_N wrote:


I recently wasted debugging time on a perfectly good macro. The problem
turned out to be Excel: when I manually changed a cell from a value that
looked like a number to another value that looked like a number, Excel
automatically converted the cell's NumberFormat from Text to Number. This
caused a routine that compares cell contents between different worksheets to
fail, because "0399" < 399.


I'm sure most programmers would agree that an application that reassigns
data types without warning the user is arrogant and inconsiderate in the
extreme.


Can I turn this feature off?- Hide quoted text -


- Show quoted text -



  #9   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 32
Default Unwanted number format conversion

Thanks Mark, Dave, JE...

I'm using XL2003. I'll do some more testing and get back to you. This
seems pretty weird!


"Mark Lincoln" wrote:

I can't reproduce this behavior in XL2003 or XL97. There must be
something else happening.

Mark Lincoln

On May 28, 2:40 am, Allen_N wrote:
Hi JE, FSt1...

Okay, please Try this.

Format a cell as text, and enter "03". Then, copy and paste this cell to the
one on the right. Then, in the new cell, change "03" to "04". When I do it,
the format of the cell changes from Number to text and the contents become
"4".

By "arrogant" I mean that it seems as though the Excel programmers want to
coerce our data into the format they think it should be, rather than what we
have explicitly typed it to be. I could be wrong; it may just be a bug.

Thanks for the advice. Please let me know if things look different to you now.



"JE McGimpsey" wrote:
XL's input parser is very consistent in how it treats inputs - it treats
values that look like numbers as numbers unless the cell is preformatted
as Text, or the input is prefixed by an apostrophe (').


Not sure what you see as arrogant...


In article ,
Allen_N wrote:


I recently wasted debugging time on a perfectly good macro. The problem
turned out to be Excel: when I manually changed a cell from a value that
looked like a number to another value that looked like a number, Excel
automatically converted the cell's NumberFormat from Text to Number. This
caused a routine that compares cell contents between different worksheets to
fail, because "0399" < 399.


I'm sure most programmers would agree that an application that reassigns
data types without warning the user is arrogant and inconsiderate in the
extreme.


Can I turn this feature off?- Hide quoted text -


- Show quoted text -




  #10   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 32
Default Unwanted number format conversion

Hi gang,

I've mostly worked out what is going on, here.

In my example, the cells in question contain values like "0390", which are
codes for our company's branches. These come into the spreadsheet (along
with other data) via an MS Query from a database on a server. The branch
code field in the source table is a string of length 4.

So, a branch code goes into a worksheet cell, via MS Query, with the leading
"0" intact. But, because the destinatioin cell has the default format
'General', editing the cell causes it to be reinterpreted as a 'Number', and
the zero gets chopped.

I guess I now have less reason to be peeved about this behaviour, but it
would be nice if Excel would try to preserve or mimic the data types of
fields in external data sources. Is there, in fact, a way to make this
happen?

Thanks for bearing with me!



  #11   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 227
Default Unwanted number format conversion

I see there hasn't been any answer in over a week. If you haven't
already done so, you may want to post this as a new question. If you
have, reply here and I'll look for the new thread.

I have never imported data via MS Query, so I'm just throwing this out
as a suggestion.

If you know which columns will contain numbers with leading zeros that
must remain intact, you could format those cells as Text before
importing your data. You could also try formatting the cells to Text
after importing your data.

You might be able to change the cell formatting "on the fly" during
the import process. This would have the advantage being automatic
during importing instead of requiring an extra step either before or
after which can easily be omitted.

Mark Lincoln

On May 29, 11:24 pm, Allen_N wrote:
Hi gang,

I've mostly worked out what is going on, here.

In my example, the cells in question contain values like "0390", which are
codes for our company's branches. These come into the spreadsheet (along
with other data) via an MS Query from a database on a server. The branch
code field in the source table is a string of length 4.

So, a branch code goes into a worksheet cell, via MS Query, with the leading
"0" intact. But, because the destinatioin cell has the default format
'General', editing the cell causes it to be reinterpreted as a 'Number', and
the zero gets chopped.

I guess I now have less reason to be peeved about this behaviour, but it
would be nice if Excel would try to preserve or mimic the data types of
fields in external data sources. Is there, in fact, a way to make this
happen?

Thanks for bearing with me!



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
Excel 2007 General Formating Unwanted Text to Date Conversion RRTRACKS77 Excel Discussion (Misc queries) 5 December 17th 08 07:14 AM
Unwanted data conversion in cells WordsmithDan Excel Discussion (Misc queries) 2 July 6th 07 12:34 AM
unwanted csv date conversion Lori Gordon Excel Discussion (Misc queries) 1 October 10th 05 11:02 PM
unwanted number to date conversion while pasting data from web Jacek Excel Worksheet Functions 1 February 24th 05 02:59 PM
Unwanted date conversion when opening a workbook Rob Excel Programming 2 June 2nd 04 04:05 PM


All times are GMT +1. The time now is 12:35 PM.

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"