A Microsoft Excel forum. ExcelBanter

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

Go Back   Home » ExcelBanter forum » Excel Newsgroups » Excel Discussion (Misc queries)
Site Map Home Register Authors List Search Today's Posts Mark Forums Read Web Partners

convert number to text without losing zeroes



 
 
Thread Tools Display Modes
  #21  
Old May 13th 11, 12:07 PM posted to microsoft.public.excel.misc
Aamir Khan
external usenet poster
 
Posts: 1
Default convert number to text without losing zeroes

Hey
dont open in Excel .
open with Notepad it will work fine...

> On Tuesday, September 25, 2007 6:22 PM Dave wrote:


> I cannot find an answer to this problem anywhere, perhaps someone here can
> help.
> I have 2 columns of data that I pulled from my proprietary database using
> ODBC. The first column is part numbers, and the second is a list price for
> the part. The part numbers are a mix of numbers, letters, and some dashes.
> I am saving this list to a .csv, uploading it to my web server, and then
> logging in to my webserver and importing the data from the .csv to a mysql
> database.
> The problem is coming in when I have part numbers that start with zero. An
> example would be 010888. The zero gets dropped off when I save it as a .csv.
> I figured I could convert it to text and it would be fine but when I convert
> it to text in excel it drops the zero too. A part number like 010888L is
> fine because its treated like text and the zero remains through any
> conversion.
>
> Please help.. I have some 9000 part numbers that I need to save to a .csv
> and 300 of them start with zero.



>> On Tuesday, September 25, 2007 6:27 PM Ron Coderre wrote:


>> One of the usual "fixes" is to change the file extension on the CSV file to
>> .TXT.
>>
>> Then, when you open the file, Excel's Text Import Wizard will allow you to
>> set the delimiter to Comma and set the first column to be Text...which will
>> preserve the leading zeros.
>>
>> Does that help?
>> Post back if you have more questions.
>> --------------------------
>>
>> Regards,
>>
>> Ron (XL2003, Win XP)
>> Microsoft MVP (Excel)
>>
>>
>> "DaveK" > wrote in message
>> ...



>>> On Tuesday, September 25, 2007 6:38 PM Pete_UK wrote:


>>> Just check that the leadings zeros are not actually missing from
>>> the .csv file by opening it in Notepad - you should be able to see the
>>> format of the file more clearly there. If the part numbers are stored
>>> in Excel as numbers and just formatted to have a leading zero, then
>>> they will be missing from the csv file - a formula like:
>>>
>>> =TEXT(A1,"000000")
>>>
>>> will convert them to text values. You could fix these values then copy
>>> them back over the offending cells.
>>>
>>> If you are bringing the file into Excel then rename it by changing
>>> the .csv extension to .txt. Then with Excel running do File | Open,
>>> point to the .txt file and then Excel will take you into the Data
>>> Import Wizard, where you have more control over how the fields are
>>> treated.
>>>
>>> Hope this helps.
>>>
>>> Pete
>>>
>>> On Sep 25, 11:22 pm, DaveK > wrote:



>>>> On Tuesday, September 25, 2007 6:40 PM Dave wrote:


>>>> Thanks for the quick response! Unfortunately, the problem lies in excel
>>>> converting the "number stored as text" (ie 010888) to 10888 when it writes it
>>>> to a .csv. I am using the .csv to populate data in an SQL server. When I
>>>> pull the data into excel, it is in the correct format. If I use any of the
>>>> tricks I have found to convert the numbers to text, excel drops the preceding
>>>> zeroes. If I save the files as .csv it drops the preceding zeroes. I don't
>>>> know what excel has against preceding zeroes, but it sure doesnt like to keep
>>>> them in my data. I really hope someone has a solution for this..
>>>>
>>>> Dave
>>>>
>>>>
>>>> "Ron Coderre" wrote:



>>>>> On Tuesday, September 25, 2007 7:10 PM Dave wrote:


>>>>> Thanks for the reply. I did check with notepad and excel exports the values
>>>>> with no leading zeroes, which is why I wanted to convert the fields to text
>>>>> first, but regardless of how I try to convert, excel takes the "number stored
>>>>> as text" and converts it to a number before converting it to true text, and
>>>>> always drops the zero. I came across the idea of the function
>>>>> text(a1,"000000"), but in my list of 9000+ products, the fields are anywhere
>>>>> from 5 to 19 characters in length, and intermingled with products containing
>>>>> both numbers and letters.
>>>>>
>>>>> So, I decided that since Excel is really designed for crunching numerical
>>>>> data, I should be using something that is designed for crunching data to pull
>>>>> my data and convert it. I went to access, linked to the data in ODBC,
>>>>> created a query, and then exported it to a .csv, and got my data with all the
>>>>> zeroes.
>>>>>
>>>>> Excel is a really easy way to work with data, especially for database
>>>>> novices such as myself. For years I have fought with numerical data being
>>>>> treated incorrectly in Excel, and it would be nice if Microsoft would realize
>>>>> that there is a shortcoming here that should be fixed. In my search for an
>>>>> answer, I came across dozens upon dozens of people with the same exact
>>>>> problem.. importing data with preceding zeroes and having excel drop it. It
>>>>> is easy to work around these short-falls if you are say, importing zip codes,
>>>>> as they are all 5 or 9 digits.. but not all data is so cut and dried..
>>>>>
>>>>> Thanks for the help and the super fast responses!
>>>>>
>>>>> "Pete_UK" wrote:



>>>>>> On Tuesday, September 25, 2007 7:47 PM Ron Coderre wrote:


>>>>>> Sorry, I misunderstood your situation.
>>>>>>
>>>>>> Perhaps this approach will work for you....
>>>>>>
>>>>>> Make sure the Part Numbers not only *look* like text, but that the cells are
>>>>>> actually formatted as text.
>>>>>>
>>>>>> Select the column of Part Numbers
>>>>>> <data><text-to-columns>...Click [Next] until Step_3_of_3
>>>>>> Check: Text (to set the column type)....Click [Finish]
>>>>>>
>>>>>> Now try saving the file as a CSV
>>>>>>
>>>>>> Does that help?
>>>>>> If no...can you post a sample file at one of the free file-hosting sites and
>>>>>> post the link for us?
>>>>>> http://www.flypicture.com/
>>>>>> http://cjoint.com/index.php
>>>>>> http://www.savefile.com/index.php
>>>>>>
>>>>>> --------------------------
>>>>>>
>>>>>> Regards,
>>>>>>
>>>>>> Ron (XL2003, Win XP)
>>>>>> Microsoft MVP (Excel)
>>>>>>
>>>>>>
>>>>>>
>>>>>> "DaveK" > wrote in message
>>>>>> ...



>>>>>>> On Tuesday, September 25, 2007 8:08 PM Dave Peterson wrote:


>>>>>>> I've never seen excel drop the leading 0's when saving as a .csv file in any
>>>>>>> version. But if I reopen the .csv in excel and save there, I can destroy those
>>>>>>> leading 0's.
>>>>>>>
>>>>>>> You may want to try saving the .csv file and then check using notepad once more.
>>>>>>>
>>>>>>> DaveK wrote:
>>>>>>>
>>>>>>> --
>>>>>>>
>>>>>>> Dave Peterson



>>>>>>>> On Wednesday, September 26, 2007 3:54 AM David Biddulph wrote:


>>>>>>>> Your advice to look at the csv with Notepad is sensible, as is the adviceto
>>>>>>>> rename the csv as txt to control the reimport.
>>>>>>>>
>>>>>>>> In which version of Excel are you encountering the situation you describe
>>>>>>>> whereby numbers stored as numbers and formatted with a leading zero will
>>>>>>>> lose the leading zero on saving as CSV, Pete? That doesn't happen for me
>>>>>>>> with Excel 2003
>>>>>>>> --
>>>>>>>> David Biddulph
>>>>>>>>
>>>>>>>> "Pete_UK" > wrote in message
>>>>>>>> ups.com...



>>>>>>>>> On Wednesday, September 26, 2007 3:59 AM David Biddulph wrote:


>>>>>>>>> If you have 010888 as a "number stored as text", then I am sure that it will
>>>>>>>>> be 010888 in the csv (or if not, I would be interested in hearing which
>>>>>>>>> version of Excel you are using?). Look at the CSV with Notepad.
>>>>>>>>>
>>>>>>>>> The problem comes if you try to use Excel to read the CSV, as it will drop
>>>>>>>>> the leading zeroes on reimport by converting them from text to numbers.
>>>>>>>>> Ron's suggestion will get round that problem.
>>>>>>>>> --
>>>>>>>>> David Biddulph
>>>>>>>>>
>>>>>>>>> "DaveK" > wrote in message
>>>>>>>>> ...



>>>>>>>>>> On Thursday, September 27, 2007 10:55 AM Dave wrote:


>>>>>>>>>> It is excel 2003.
>>>>>>>>>>
>>>>>>>>>> Keep in mind this is NOT when you have a number, or a text field, it only
>>>>>>>>>> happens when you import data. It is not a true text field (if it was the
>>>>>>>>>> stupid green triangle would appear) and it is not a number field. It is
>>>>>>>>>> treated as a number but retains the zero. The data is fine until you try to
>>>>>>>>>> manipulate it in excel. The only way I found to convert it to true text
>>>>>>>>>> without dropping the preceding zero is to do a function =text(a1, "000000")
>>>>>>>>>> but that only works if the number has 6 digits, and my data ranged from 3 or
>>>>>>>>>> 4 digits to maybe 19..
>>>>>>>>>>
>>>>>>>>>> If you want to reproduce this, import data from some source that contains
>>>>>>>>>> some numbers and some text in the same column. The numbers will right
>>>>>>>>>> justify, and anything with a character in it will left justify.. now save it
>>>>>>>>>> to a .csv and open the .csv with notepad.. you will see there are no
>>>>>>>>>> preceding zeroes now. If you enter a number manually, it will drop the
>>>>>>>>>> preceding zeroes. If you put a single quote in front, it will give you the
>>>>>>>>>> green triangle which denotes number stored as text.
>>>>>>>>>>
>>>>>>>>>> Using access to import my data and exporting it to a .csv is working great
>>>>>>>>>> and actually works better than excel did.. I should have started with access
>>>>>>>>>> to begin with. I use excel perhaps 10 times a day to import data and create
>>>>>>>>>> a report so I am very comfortable with it and it is very easy. In older
>>>>>>>>>> versions of excel, typing a number in a field that had preceding zeroes
>>>>>>>>>> removed the zeroes, and even worse, if the number had 6 digits it would
>>>>>>>>>> automatically convert it to a date, so at one time I had hundreds of
>>>>>>>>>> spreadsheets with part numbers that the author had to put a single quote in
>>>>>>>>>> front of to force it to store the number as text. When I started linking all
>>>>>>>>>> these sheets to a mater spreadsheet with all my pricing (this was for our
>>>>>>>>>> product catalog), I found that a number stored as text will not lookup from a
>>>>>>>>>> regular number that is the same, or from a number imported from an external
>>>>>>>>>> source (ie 010888), so back then I had to learn how to convert a number
>>>>>>>>>> stored as text to a real number. However, I was never exporting that to a
>>>>>>>>>> .csv until now.
>>>>>>>>>>
>>>>>>>>>> Excel needs to add to their import data function and have a raw data field
>>>>>>>>>> format where everyting coming in is true text, instead of trying to be smart
>>>>>>>>>> and make certain fields numbers just because they dont have characters in
>>>>>>>>>> them. Further, there should be a way to define each column when importing
>>>>>>>>>> data, much like you can when opening a .txt file.
>>>>>>>>>>
>>>>>>>>>> One more note, I use the .csv data to populate a sql database in a remote
>>>>>>>>>> server that does not allow a direct import. I do not open it back up in
>>>>>>>>>> excel to check things out and didnt notice this problem until I was trying to
>>>>>>>>>> query my sql data with a part number starting in zero.
>>>>>>>>>>
>>>>>>>>>> "David Biddulph" wrote:



>>>>>>>>>>> On Thursday, September 27, 2007 11:06 AM Dave wrote:


>>>>>>>>>>> That was the first thing I tried, and the preceding zeroes disappear. As I
>>>>>>>>>>> was trying to get across in another reply, I cannot reproduce this situation
>>>>>>>>>>> unless I am importing the data.. if you go to a general field and type 0123,
>>>>>>>>>>> you get 123. If you type '0123 you get 0123 with the green triangle. If you
>>>>>>>>>>> change the format to custom, you set the number of characters and can get
>>>>>>>>>>> 0123. I think what happens on import is excel takes any field with all
>>>>>>>>>>> numbers and counts the digits and creates a custom field format for that
>>>>>>>>>>> number. When you try to convert it to anything else, it drops the zero.
>>>>>>>>>>>
>>>>>>>>>>> I just don't think excel is capable of taking a column of data with a mix of
>>>>>>>>>>> these custom formats and doing anything without losing the preceding zeroes.
>>>>>>>>>>> However, Access does not have the field restrictions that excel has, so it
>>>>>>>>>>> worked for me.
>>>>>>>>>>>
>>>>>>>>>>> Thanks again for any advice here.. I learned a lot about what excel's
>>>>>>>>>>> limitations are in the last couple days.
>>>>>>>>>>>
>>>>>>>>>>> "Ron Coderre" wrote:



>>>>>>>>>>>> On Thursday, September 27, 2007 11:07 AM Dave Peterson wrote:


>>>>>>>>>>>> Nobody said that the leading 0's would be saved if you opened a .csv file in
>>>>>>>>>>>> excel.
>>>>>>>>>>>>
>>>>>>>>>>>> But if I create a workbook and either enter the value as text '001 (or
>>>>>>>>>>>> preformatting the cell as text), or use a formula like: =text(a1,"000000") or
>>>>>>>>>>>> use a custom format of 000000, then those leading zeros are preserved when excel
>>>>>>>>>>>> saves the file as a .CSV file.
>>>>>>>>>>>>
>>>>>>>>>>>> If you leave the cell's format as General and type in: 000123, then those
>>>>>>>>>>>> leading 0's will be lost as soon as you hit enter. Saving to a .CSV file will
>>>>>>>>>>>> not put them back. The data has to have the leading 0's for them to be saved in
>>>>>>>>>>>> the .CSV file.
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> DaveK wrote:
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>>>>
>>>>>>>>>>>> Dave Peterson



>>>>>>>>>>>>> On Thursday, September 27, 2007 11:08 AM Peo Sjoblom wrote:


>>>>>>>>>>>>> It's already there if you open the csv file using data>import external
>>>>>>>>>>>>> data>import data
>>>>>>>>>>>>> then use *.* in the file name box. Then you can open teh csv file and it
>>>>>>>>>>>>> will trigger the text import wizard where you can format each column
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> --
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Peo Sjoblom



>>>>>>>>>>>>>> On Thursday, September 27, 2007 12:51 PM Dave wrote:


>>>>>>>>>>>>>> sorry let me clarify.. importing data from an ODBC source.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> "Peo Sjoblom" wrote:



>>>>>>>>>>>>>>> On Thursday, September 27, 2007 1:07 PM Dave wrote:


>>>>>>>>>>>>>>> I am not opening the .csv file.. Excel never saves the leading zeroes in the
>>>>>>>>>>>>>>> first place when saving to a .csv file, which is the problem, but they are
>>>>>>>>>>>>>>> there when I import the data. When you do a data import using ODBC, you do
>>>>>>>>>>>>>>> not get a text field, or a number field (although it right justifies it like
>>>>>>>>>>>>>>> a number field), and you dont get the green triangle so it is not number
>>>>>>>>>>>>>>> stored as text, which I thought was the case when I first posted.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> I believe excel brings each item in as a custom format if it is all numbers,
>>>>>>>>>>>>>>> and the values with characters it brings in as text, but it labels the whole
>>>>>>>>>>>>>>> column as general (although if I create a custom field with 0000 and type in
>>>>>>>>>>>>>>> 0001 the value excel stores is 1, not 0001, where the data imported value
>>>>>>>>>>>>>>> stored is 0001). Changing the format of the column does nothing. Anything
>>>>>>>>>>>>>>> other than cut, copy, paste type actions on these number-like fields results
>>>>>>>>>>>>>>> in Excel converting it to a number and dropping the zero.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> I have been unable to duplicate what excel is doing to imported data by
>>>>>>>>>>>>>>> manually entering data.. like you said, if you type 0001, you get 1, unless
>>>>>>>>>>>>>>> you put a single quote in front in which case you get a number stored as
>>>>>>>>>>>>>>> text, which for data purposes is not the same as a custom field (ie you
>>>>>>>>>>>>>>> cannot use a lookup function to get that number).
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> If anyone is interested in examining some data, I would be happy to email a
>>>>>>>>>>>>>>> sample to them of data imported with ODBC that has leading zeroes. Short of
>>>>>>>>>>>>>>> manipulating each individual field I cannot find a way to save the zeroes
>>>>>>>>>>>>>>> when saving to a .csv file.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Dave
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> "Dave Peterson" wrote:



>>>>>>>>>>>>>>>> On Thursday, September 27, 2007 1:33 PM Peo Sjoblom wrote:


>>>>>>>>>>>>>>>> You are incorrect, its' when someone opens the csv file in Excel it removes
>>>>>>>>>>>>>>>> the zeros. It definitely saves with the leading zeros
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Peo Sjoblom



>>>>>>>>>>>>>>>>> On Thursday, September 27, 2007 3:55 PM Dave wrote:


>>>>>>>>>>>>>>>>> Trust me, it is not saving the zeroes. Perhaps the newer version of excel
>>>>>>>>>>>>>>>>> has fixed this, but on excel 2003, if you import data to excel from an ODBC
>>>>>>>>>>>>>>>>> source that has leading zeroes, then save to a .csv, the fields are stripped
>>>>>>>>>>>>>>>>> of the preceding zeroes. I can save the file as a .csv, and then open the
>>>>>>>>>>>>>>>>> .csv in notepad and there are no leading zeroes. If I do the same using
>>>>>>>>>>>>>>>>> Access the zeroes remain.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> "Peo Sjoblom" wrote:



>>>>>>>>>>>>>>>>>> On Thursday, September 27, 2007 4:17 PM Peo Sjoblom wrote:


>>>>>>>>>>>>>>>>>> "DaveK" > wrote in message
>>>>>>>>>>>>>>>>>> ...
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> It is when you import it to Excel it removes the zeros, not when you save
>>>>>>>>>>>>>>>>>> it.
>>>>>>>>>>>>>>>>>> If you would import it as numbers and not text and then use a custom format
>>>>>>>>>>>>>>>>>> showing
>>>>>>>>>>>>>>>>>> leading zeros it will save them in the csv file
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Peo Sjoblom



>>>>>>>>>>>>>>>>>>> On Thursday, September 27, 2007 5:22 PM Dave Peterson wrote:


>>>>>>>>>>>>>>>>>>> Are the leading 0's there after you import the data from that ODBC source?
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> If they're gone after that import, then the .CSV file won't have them. If
>>>>>>>>>>>>>>>>>>> they're there (because of formatting or anything else), then you're describing
>>>>>>>>>>>>>>>>>>> something new to me. I've never seen it in xl95 to xl2007.
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> Are you saving the .CSV file using File|SaveAs or are you doing something else?
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> DaveK wrote:
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> Dave Peterson



>>>>>>>>>>>>>>>>>>>> On Monday, December 10, 2007 8:18 AM coli wrote:


>>>>>>>>>>>>>>>>>>>> Hi,
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> The solution I have is to select the 1st cell that has the flagged error
>>>>>>>>>>>>>>>>>>>> then prees control and the down button to highlight the rest of the data in
>>>>>>>>>>>>>>>>>>>> the column
>>>>>>>>>>>>>>>>>>>> and then select the option flag which is still visible and select ignore
>>>>>>>>>>>>>>>>>>>> error
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> this will then apply this to all highlighted cells and retain the leading zero
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> rgds
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> Colin
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> "DaveK" wrote:




Ads
 




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Convert text number to number formate [email protected] Excel Discussion (Misc queries) 2 April 9th 07 10:48 AM
first number after zeroes in sequence [email protected] Excel Worksheet Functions 4 January 17th 07 06:38 PM
Convert Text to Number CADManBill Excel Worksheet Functions 5 November 2nd 05 05:09 AM
convert text-format number to number in excel 2000%3f Larry Excel Discussion (Misc queries) 1 July 29th 05 08:18 PM
not able to convert text, or graphic number to regular number in e knutsenk Excel Worksheet Functions 1 April 2nd 05 08:41 AM


All times are GMT +1. The time now is 06:50 PM.


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