将格式为数字的数字单元格转换为文本

时间:2014-11-20 09:47:16

标签: excel format excel-2010

我在一个价格表上工作,我有像'124846'这样的参与号码,我正在使用索引/匹配从我们的sql db获取股票价值。

问题是124846被保存为我得到的excel文件中的数字。并且在sql连接中它们是文本,因此Excel将不匹配它们。

如果我选择所有的partnumbers并将格式编辑为TEXT,那么在我双击每个单元格并按Enter键之前没有任何反应,此时它会将数字转换为文本。

无论如何在没有双击/输入每个单元格(3000rows)的情况下自动执行此操作

/基督教

1 个答案:

答案 0 :(得分:0)

选择要转换的单元格并运行此小宏:

Sub NumberToText()
    Dim r As Range
    For Each r In Selection
        r.NumberFormat = "@"
        r.Value = r.Value
    Next r
End Sub

宏非常易于安装和使用:

  1. ALT-F11调出VBE窗口
  2. ALT-I ALT-M打开了一个新模块
  3. 粘贴内容并关闭VBE窗口
  4. 如果保存工作簿,宏将随之保存。 如果您在2003年之后使用的是Excel版本,则必须保存 该文件为 .xlsm 而不是 .xlsx

    删除宏:

    1. 按上述方式调出VBE窗口
    2. 清除代码
    3. 关闭VBE窗口
    4. 要使用Excel中的宏:

      1. ALT-F8
      2. 选择宏
      3. 触碰RUN
      4. 要了解有关宏的更多信息,请参阅:

        http://www.mvps.org/dmcritchie/excel/getstarted.htm

        http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

        必须启用宏才能使其生效!