如何在Excel中将数字转换为文本

您想学习如何在 Excel 中将数字转换为文本,以适当处理诸如输入和可视化大数值、显示前导零或阻止 Excel 将数字条目转换为日期等情况吗?请继续阅读!

尽管 Excel 主要用于处理数字并从原始数据集中创建可操作的见解,但它允许您将数字数据集转换为特殊格式,如日期、货币等。最常用的格式之一是数字到文本的转换,将小数转换为文本字符串。

例如,如果所有值都是数字格式,且条目长度超过 3 位,则您无法搜索某些数字组合,例如 500 在数据集中出现的次数。此时,将数据集转换为文本将有助于在数据集的单元格中搜索 500。还有更多这样的例子,其中给定数字的文本格式更有用。

以下是将数字转换为文本的各种方法,以便在 Excel 中方便地进行数据分析。

推荐:WordPress数据库搜索替换插件Better Search Replace Pro

使用撇号将数字转换为文本

如果您想在 Excel 中将一些数字转换为文本,可以使用这种快速手动方法。在这里,您只需在单元格中添加前导撇号即可将数值转换为文本字符串。

如何在Excel中将数字转换为文本
添加前导撇号

为此,选择相关的单元格并按下F2键进入单元格编辑模式。

单击值左侧的第一个字符并添加撇号符号。

使用撇号将数字转为文本
使用撇号将数字转为文本

HitEnter和 Excel 将立即自动将您的数字转换为文本。

您必须对数据集中的每个单元格分别重复此步骤。

您将在单元格中看到背景错误检查图标。您可以忽略它。

错误检查选项
错误检查选项

但是,如果 Excel 工作表用于专业会议或活动中的演示,则可以隐藏背景错误检查图标。只需单击单元格,然后单击右侧的黄色警告图标即可。

上下文菜单会打开,其中包含 6 个选项。单击最后一个选项,即“错误检查选项”

禁用后台错误检查
禁用后台错误检查

Excel 选项对话框的公式设置应会显示出来。在此处,取消选中启用后台错误检查复选框,然后单击确定以保存更改。

使用“文本转列”将数字转换为文本

虽然“文本到列”工具允许您将分隔数据集(如逗号分隔值(CSV)、分号分隔值和制表符分隔值)拆分为多列,但它也可以用于将数值转换为文本。

当您必须将整列填充数字数据转换为文本字符串时,此方法特别合适。

将文本转换为列
将文本转换为列

转到源工作表并突出显示列中的数据集。现在,按AltA+E调出“文本到列”向导。

选择“分隔”选项,然后单击“下一步”

选择分隔符
选择分隔符

在对话框的下一个屏幕上,选择“分隔符”列下方的任意选项,然后单击“下一步”

将文本完成至列
将文本完成至列

在列数据格式列下方,选择文本并单击完成按钮。

一旦完成所有步骤,Excel 就会将突出显示的数字转换为文本字符串。

如果您的 Excel 桌面应用程序上的后台错误检查处于活动状态,您应该会在数据集的单元格上看到绿色的错误检查图标。

使用“&”符号将数字转换为文本

在 Excel 中,您可以使用&Shift7) 运算符将文本字符串连接在一起。连接文本字符串时,如果您添加对数字单元格和文本单元格的引用,那么这样做同样有效。

连接公式
连接公式

假设您想使用此方法将列中的所有数字转换为文本,请转到源数据集列( A 列)右侧的空白列(B 列)的第一个单元格( B2 ) 。在那里,输入以下公式:

=""&A2
使用 & 符号将数字转换为文本
使用 & 符号将数字转换为文本

点击Enter即可完成数字到文本的转换。

使用填充柄
使用填充柄

现在,将填充柄沿列向下拖动,直到与B 列平行的源数据集中存在数据的最后一个单元格。

Excel 将快速复制该列所有单元格中第一个单元格的公式并计算生成文本字符串。

在这种方法中,您不会在转换后的单元格中看到背景错误检查图标。

使用数字格式化工具将数字转换为文本

如果包含数字的数据集的值不超过 11 个字符,则可以使用“主页”选项卡中的“数字格式化”工具将其转换为文本字符串。

突出显示数字并选择文本
突出显示数字并选择文本

突出显示目标数据集并转到“数字”块中的“常规”下拉菜单。单击它并从上下文菜单中选择“文本” 。

使用文本格式转换为文本
使用文本格式转换为文本

您应该将文本字符串放在同一列中。单元格中的条目应左对齐,并转换为文本值。

推荐:WooCommerce电子邮件定制器插件YayMail

使用“格式化单元格”工具将数字转换为文本

这是将海量数据集转换为文本字符串的另一种快速方法。

使用单元格格式
使用单元格格式

转到目标数据集并突出显示。

Ctrl+1打开“设置单元格格式”对话框。

在那里,选择类别列下方的文本选项,然后单击确定

使用“设置单元格格式”转换为文本
使用“设置单元格格式”转换为文本

这样,Excel 就会将数字转换为文本,而不会显示绿色的小错误检查图标。

使用 TEXT 函数将数字转换为文本

您还可以使用各种Excel公式从数值中获取文本字符串。TEXT函数就是其中之一。使用此公式,您还可以为输出值引入自定义格式。

使用 TEXT 函数
使用 TEXT 函数

在目标数据集上,突出显示第一个单元格并输入以下公式:

=TEXT(A2,"0")
应用公式
应用公式

按下Enter即可获取文本字符串。

TEXT 函数
TEXT 函数

现在您可以使用填充柄将相同的公式应用于列中的其余单元格。

要在文本字符串值中引入自定义格式,可以使用TEXT公式的以下变体:

带小数的文本
带小数的文本
=TEXT(123.25,"0.0")
包含两位小数的文本
包含两位小数的文本
=TEXT(123.25,"0.00")
具有货币格式的文本
具有货币格式的文本
=TEXT(D2,"$#,###,###.##")

使用 Power Query 将数字转换为文本

您还可以使用Power Query工具将导入或现有的数据集批量转换为文本字符串。如果您有 Excel 2010 或更高版本,则可以使用此方法。

将数据集导入 Power Query
将数据集导入 Power Query

如果您要从外部源导入大型数字数据集,您可以转到“数据”选项卡并单击“获取数据”以查找导入数据的各种选项。

在那里,将光标悬停在“从数据库”选项上,然后从“从 SQL”“从 Microsoft Access ”、“从 Oracle”等选项中选择您的源。

创建表
创建表

对于工作表中已有的数据集,请突出显示它并单击“数据”选项卡中的“从表/范围”命令。单击“创建表”对话框中的“确定”以形成表。

Power Query 中的数据
Power Query 中的数据

您现在将在Power Query中看到您的数据集。

添加自定义列
添加自定义列

转到“添加列”选项卡并单击“自定义列”按钮。

自定义列对话框中,在新列名称字段中键入名称。

在自定义列公式字段中,输入以下公式,然后单击确定

Text.From([CC Numbers])

在上面的公式中,[CC Numbers]根据您自己的数据集更改列名。

Power Query 中的文本字符串
Power Query 中的文本字符串

Power Query 将创建一个新列,其中包含相应数值的文本字符串。

关闭并加载至
关闭并加载至

现在,单击“文件”选项卡并选择“关闭并加载到”选项。

现有工作表
现有工作表

将显示“导入数据”对话框。在那里,选择现有工作表选项并突出显示您希望 Excel 从 Power Query 导入转换后的数据集的单元格。

工作表中导入的文本
工作表中导入的文本

您可以删除包含数值的冗余列作为文本字符串,或者您创建的自定义列包含您需要的值。

使用 Power Pivot 将数字转换为文本

Power Pivot是将大型数值数据集转换为文本字符串的另一种选择。在必须导入包含Excel 可以处理的超过 1,048,576 行的大数据集的情况下,应该使用 Power Pivot 。现在,您可以清理和转换数据集以将其导出到实际的 Excel 电子表格,该电子表格应在 Excel 的行数限制内。

如果您在 Excel 功能区菜单上没有看到 Power Pivot 选项卡,请阅读本文以将该工具添加到您的 Excel 桌面应用程序:

📒阅读更多将 Power Pivot 添加到 Microsoft Excel 的 4 种方法

添加到数据模型
添加到数据模型

现在您已经获得了该工具,请突出显示您想要在 Power Pivot 中分析的数据集,然后单击Power Pivot选项卡内的“添加到数据模型”按钮。

创建表 Power Pivot
创建表 Power Pivot

您将看到“创建表”对话框。单击“确定”继续。

整数
整数

Power Pivot窗口上,单击输入数据集的列标题。在“主页”选项卡上,单击“数据类型”按钮,然后在“格式”块中选择“整数” 。

DAX 公式
DAX 公式

现在,单击输入数据集相邻列的第一个单元格,并在其中输入以下数据分析表达式 (DAX)公式:

=FORMAT(Table5[CC Numbers],"0")
应用 DAX 公式
应用 DAX 公式

点击Enter。Power Pivot 将使用公式将左侧列中的所有数值数据转换为右侧列中的文本字符串。不要忘记根据您自己的数据集自定义公式。

使用 Power Pivot 转换为文本
使用 Power Pivot 转换为文本

突出显示 Power Pivot 列中的转换值并将其粘贴到 Excel 电子表格中。

推荐:WordPress卸载媒体插件Leopard

使用 Excel VBA 将数字转换为文本

如果您希望自动将数字转换为文本字符串,则可以使用Excel VBA

下面的脚本可用于创建以交互方式处理任务的 VBA 宏:

Excel VBA 转换为文本
Excel VBA 转换为文本
Sub ConvertNumbersToText()

    ' Prompt the user to select a range of cells with numerical data
    Dim SourceRange As Range
    Set SourceRange = Application.InputBox("Select a range with numerical data", "Obtain Range Object", Type:=8)

    ' Prompt the user to select a range where to paste the converted data
    Dim TargetRange As Range
    Set TargetRange = Application.InputBox("Select a range where to paste the converted data", "Obtain Range Object", Type:=8)

    ' Check if the selected ranges have the same size
    If SourceRange.Cells.Count  TargetRange.Cells.Count Then
        MsgBox "The source and target ranges must have the same size.", vbCritical
        Exit Sub
    End If

    ' Convert number formatting of input data to text format and paste the values in the designated cell range
    Dim cell As Range
    Dim i As Integer
    For i = 1 To SourceRange.Cells.Count
        Set cell = SourceRange.Cells(i)
        TargetRange.Cells(i).NumberFormat = "@"
        TargetRange.Cells(i).Value = Format(cell.Value, "0")
    Next i

    MsgBox "Conversion completed successfully.", vbInformation

End Sub
获取输入数据集
获取输入数据集

现在,当您执行宏时,您将看到一个对话框,允许您选择包含数值数据集的单元格范围作为输入。

选择目的地
选择目的地

接下来,您应该看到另一个允许您选择目标单元格范围的对话框。

使用 VBA 转换为文本
使用 VBA 转换为文本

最后,VBA 宏完成转换过程。转换完成后,您可能会看到绿色的错误检查图标。

要了解如何使用上述脚本创建 VBA 宏,请阅读以下文章:

📒阅读更多如何使用在线找到的 VBA 代码

使用 Excel VBA 将货币符号转换为文本

您是否经常需要将货币数字符号转换为数字以便签发支票或进行银行业务?

然后,您可以使用以下 VBA 脚本通过单击以交互方式将数值货币金额转换为数字:

VBA 脚本将数字转换为文字
VBA 脚本将数字转换为文字
Sub ConvertNumbersToWords()
    Dim rngInput As Range
    Dim rngDestination As Range
    Dim cell As Range
    Dim inputCell As Variant
    Dim outputCell As Range
    
    ' Prompt user to select input range
    On Error Resume Next
    Set rngInput = Application.InputBox("Select the range containing numerical values:", Type:=8)
    On Error GoTo 0
    
    ' Exit if user cancels the input box
    If rngInput Is Nothing Then
        Exit Sub
    End If
    
    ' Prompt user to select destination range
    On Error Resume Next
    Set rngDestination = Application.InputBox("Select the destination cell range:", Type:=8)
    On Error GoTo 0
    
    ' Exit if user cancels the input box
    If rngDestination Is Nothing Then
        Exit Sub
    End If
    
    ' Loop through each cell in input range
    For Each cell In rngInput
        ' Check if cell contains a numerical value
        If IsNumeric(cell.Value) Then
            ' Convert numerical value to words
            inputCell = cell.Value
            Set outputCell = rngDestination.Cells(cell.Row - rngInput.Row + 1, cell.Column - rngInput.Column + 1)
            outputCell.Value = ConvertToWords(inputCell) & " dollars"
        End If
    Next cell
End Sub

Function ConvertToWords(ByVal number As Double) As String
    Dim numText As String
    Dim units As Variant, tens As Variant, teens As Variant
    
    units = Array("", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine")
    tens = Array("", "ten", "twenty", "thirty", "forty", "fifty", "sixty", "seventy", "eighty", "ninety")
    teens = Array("eleven", "twelve", "thirteen", "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", "nineteen")
    
    If number = 0 Then
        ConvertToWords = "zero"
    ElseIf number 
选择货币金额
选择货币金额

首先,您需要选择输入数据集,如上所示。

选择单词的目的地
选择单词的目的地

然后,您还需要选择货币符号转换为文字的目的地。

将数字转换为文字
将数字转换为文字

上图为转换后的单词。

结论

就是这样!如果您希望在 Excel 中将数字转换为文本,这些就是您一直在寻找的方法。对于小规模的数字到文本的转换,您可以使用 Excel 应用程序界面命令,如文本到列、数字格式、设置单元格格式等。

对于大规模数据集的导入和转换,您应该选择 Power Query 和 Power Pivot。

最后,如果您希望自动化该过程,请使用本文提供的脚本创建 VBA 宏。

推荐:Power Pivot添加到Microsoft Excel的4种方法


发表评论