When I enter a number like 8230e12 into a Microsoft Excel 2000 cell, Excel changes the number I entered into 8230000000000000. (This is what I get when I press F2 to edit the cell's contents, not what Excel displays in the cell). How can I force Excel to keep the data in the format I typed it and still be able to format it and use it as a number? Displaying the cell in scientific notation is not enough, because the exponent is not the same one as the one I typed.
11 Answers
If you wish Excel to keep the cell formatted exactly as entered, i.e. 8230e12, regardless of whether you are looking at it or editing it, then this can't be done whilst retaining the ability to treat the cell contents as a number.
The only way I can see round this is to enter your data in cells that are formatted as text, and then have another cell, formatted as some kind of number, that has a formula of =VALUE(A1) or whatever so that calculations can be performed on this cell.
Other than that you are looking at some VBA to manage this, overkill I would have thought.
- 5,591
I had success in solving what I think is a similar issue to yours. All I did was create a custom format of "'#" (note the apostrophe before the hash) and applied it to the column containing the numbers that needed to be viewed in their 12+ digit form. My values were still correct though as the columns were initially set to general.
I had this with list of long numbers, about 14000 entered into one column. I highlighted the column, Data -> Text to Columns -> Fixed length -> Don't create any break lines. Clear any that show up -> Select column data format text -> Finish. Worked like a charm.
- 11
As @FoleyIsGood commented: Instead of inputting it with "e" notation, write it out explicitly: = 8230 * 10^12.
- 109
- 3
Put a " ' " before the number, then add a helper column that does Right(cell you typed in,len(cell you typed in). This will put it back in full
I resolved the issue by using =IF(MID(B31,6,1)="E","Y","N") to identify where the Exponential lies (represented by the "E") and then replacing the E with "#" using =REPLACE(B31,6,1,"#").
- 2,014
Format the cell as custom number format and you can tweak the display to whatever you need. E.g. "0000E+12" will display your "8230e12" as "8230E+12"
- 350
Try this ="8230e12". It worked for me just now, after I saw that nothing you guys suggested was useful, gave this a shot.
- 304
- 4
- 6
- 19
I had the same issue with a big number that I wanted without the exponent I solved it using Text function from Excel. in vba just do:
Application.WorksheetFunction.Text(Cells(myrow,mycol).Value(), "0")
Change the "0" with the format you need. VoilĂ :)
- 109
This Works: 1. Highlight the column 2. Right click "Format Cells..." 3. From the number Tab, Select Category=Number and ensure Decimal Place is set to Zero (unless you have decimal values in the cell content) 4. OK