number to text macro in EXCEL 2013

Hi Experts
I need some help in properly write a macro in excel, I used to be able to do this in LOTUS123 but I can't figure it out in EXCEL.

I have 4400 lines of nun sequential numbers that I need to be text.  I tried just formatting the column as text but that did not hold the "0" in the last place on the number like I need, so I need to write a macro that will put the apostrophe in front of the number.

when I try to record a macro and the run it, it takes the data (number) from the cell where the macro was written and copies it down with the apostrophe.
So obviously that is no good.

how do I fix this.
Who is Participating?
Saqib Husain, SyedConnect With a Mentor EngineerCommented:
Saqib Husain, SyedEngineerCommented:
Select your data and then run this macro.

sub cvtxt()
for each cel in selection
cel="'" & cel
next cel
end sub
If you want to do it without a macro, you can use the TEXT function to convert the number to whatever format you want, then copy/paste values to retain the text value.

So if A1 had the value "1234" but you want it to show "001234", you'd do =TEXT(A1,"000000")
Then copy the formula and paste the value over it. It will now contain 001234.

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

KenBlessingAuthor Commented:
sorry guys neither of these answers work for me.

what I have is :


What I whant is to do is put  the " '  " in front of the number


I hope that helps.

Saqib Husain, SyedEngineerCommented:
You need to tell us more about "does not work"

Does it give an error?
Does it give wrong results?
Does it do nothing at all?
KenBlessingAuthor Commented:
it does nothing at all
Saqib Husain, SyedEngineerCommented:
You have to SELECT the range before running the macro
KenBlessingAuthor Commented:
I did
KenBlessingAuthor Commented:
Can you send a screen shot of the macro in the editor, maybe I put it in wrong.
Thank you
KenBlessingAuthor Commented:
as I said I am really new to macros in excel
Saqib Husain, SyedEngineerCommented:
While I upload a file

Right-click on the sheet tab name
Select View code
From the menu      Insert > Module
Paste this code in the VBA window
Close the VBA window
Select your range
Press Alt-F8
Select the macro name
Click on run
mvidasConnect With a Mentor Commented:

You don't need to have the apostrophe before the value to force the formatting, and you don't need to use macros.

Insert a column next to your data. If your data is in column A, put the following into the (new) B1


That will show the value of cell A1 but with a forced three decimals like you want.

Then copy that formula down as far as the data goes.

Next, select your original cell range and change the format to Text.

Finally, copy your column B with the formatted numbers, go to your original range, and go to Paste -> Paste Special (the little arrow) -> and then the first Paste Values choice.

You can then delete the helper column B.

Your cells will now contain a permanent text version of the number formatted as you want it.

KenBlessingAuthor Commented:
Thank you both Saqib Husain, Syed and Matt both answers worked.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.