Converting Microsoft Excel Values to Text in an Excel Macro (64681)



The information in this article applies to:

  • Microsoft Excel for Windows 95
  • Microsoft Excel for Windows 5.0
  • Microsoft Excel 98 Macintosh Edition

This article was previously published under Q64681

SUMMARY

The following macro command will convert a numeric value in the active cell to a text string:
   =FORMULA("="&CHAR(34)&ACTIVE.CELL()&CHAR(34))
				
For example, when you run this command on a cell that contains the following entry:

3

the entry is converted to the following:

="3"

MORE INFORMATION

Microsoft provides programming examples for illustration only, without warranty either expressed or implied. This includes, but is not limited to, the implied warranties of merchantability or fitness for a particular purpose. This article assumes that you are familiar with the programming language that is being demonstrated and with the tools that are used to create and to debug procedures. Microsoft support engineers can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific requirements. The follow macro example converts either a single cell or a range of cells from numeric data to text so that you can affect multiple cells at one time.

A1: Convert_number_to_text
A2: =FOR.CELL("CURRENT",,TRUE)
A3: =FORMULA("="&CHAR(34)&CURRENT&CHAR(34),CURRENT)
A4: =NEXT()
A5: =RETURN()

Microsoft Excel Version 4.0

You can assign this macro to a button in Microsoft Excel version 4.0 by using the following steps:

  1. From the Options menu, choose Toolbars.
  2. Choose the Customize button.
  3. From the Categories list, select Custom.
  4. From the list of buttons, drag the button that you want to use to run the macro to the toolbar area.
  5. From the Assign Macro list in the Assign To Tool dialog box, select Macro1!Convert_number_to_text (where Macro1 is the macro sheet that contains the macro, and choose OK.
  6. Close the Customize dialog box.
  7. Save the macro sheet, Macro1 in this example, to the XLSTART subdirectory (Windows) or the EXCEL STARTUP FOLDER (4) (Macintosh).
  8. After you save the file, choose Hide from the Window menu to hide the macro sheet. When you exit Microsoft Excel, choose Yes to save the changes to the macro sheet.
The macro sheet will automatically open when you start Microsoft Excel, so that you can run the macro from the custom toolbar button that you created.

Microsoft Excel Versions 5.0 and later

NOTE: This macro command also applies to Microsoft Excel versions 5.0 and 7.0, but is not required, because of the ability to format cells as text. To format cells as text in Microsoft Excel version 5.0 and 7.0, do the following:

  1. Select the cell(s) that you want to format as text.
  2. On the Format menu, click Cells. Select the Number tab.
  3. In the Category list, click Text, and then click OK.
Numbers that you enter in these cell(s) will be formatted as text.

NOTE: If you format a cell as Text in Microsoft Excel versions 5.0 and 7.0, the underlying cell value will still be treated as a number, if that is what you entered in the cell. The following Visual Basic for Applications macro will convert underlying cell values to Text.
   Sub Convert2Text()

      For Each Cell in Selection.Cells

         OldNF$ = Cell.NumberFormat

         Cell.NumberFormat = "@"

         Cell.Value = Application.Text(Cell.Value, OldNF$)

      Next

   End Sub
				
To use this macro, select the range of cells you want converted to text and then run the macro.

Modification Type:MinorLast Reviewed:8/15/2005
Keywords:kbcode kbhowto kbProgramming KB64681