如何在 Excel 中将电话号码格式转换为数字?
在处理包含电话号码列表的 Excel 工作表时,您可能会经常遇到各种格式样式,例如括号、空格或破折号。这些非数字字符可能会干扰需要电话号码为纯数字序列的数据分析、系统导入或自动拨号过程。如果您需要通过仅提取格式化电话号码中的数字来标准化数据,本文提供了几种实用的解决方案,可帮助您在 Excel 中高效实现这一目标。
以下是一个您可能面临的场景示例:左列包含不同格式的电话号码,而右列显示了所需的结果:移除所有非数字字符后的电话号码,只留下连续的数字字符串。
使用公式将电话号码格式转换为数字
使用快速填充从格式化的电话号码中提取数字
使用 Kutools for Excel 将电话号码格式转换为数字
使用宏去除电话号码中的所有非数字字符
使用公式将电话号码格式转换为数字
Excel 的公式允许您删除不需要的字符,并在电话号码列表中仅保留数字。如果您不想使用插件或编程,这种方法特别有用,并且适用于遵循一致格式的电话号码,例如 (123)456-7890 或 123-456-7890。但是,如果您的数据包含额外的非标准符号或字母,则可能需要更高级的技术。
1. 选择一个空白单元格(例如 C2),您希望在此显示提取的数字。输入以下公式并按 Enter 键:
=--SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,"(",""),")","")," ",""),"-","")
注意:此公式中,A2 是包含原始电话号码的单元格引用。如果您的数据位于不同的列或行,可以修改此引用。
2. 在仍然选中 C2 单元格的情况下,拖动填充柄(单元格右下角的小方块)向下填充公式以覆盖列表的其余部分(例如,从 C2 到 C8)。这将把公式应用到区域中的每个电话号码。
现在,数据区域中的每个电话号码都应被转换为仅包含数字的序列。
使用快速填充从格式化的电话号码中提取数字
Excel 的快速填充功能提供了一种智能的手动替代方案,用于从电话号码中提取数字——尤其在处理一致的列表格式或当您想要快速、无需公式的解决方案时非常有效。快速填充会根据您的手动输入评估模式,然后填充剩余的列以匹配您的示例。
1. 假设您的电话号码位于 A 列,从单元格 A2 开始。在相邻列(B2)中,手动输入第一个电话号码的数字,省略任何符号或空格(例如:1234567890)。
2. 转到 B3 单元格。开始输入下一个电话号码的数字。当您开始输入时,Excel 会自动检测模式并在键入值下方显示建议的自动填充(灰色高亮显示)。
3. 按 Enter 键接受快速填充建议,Excel 将在该列中填入所有对应行的提取数字。
提示:如果快速填充未自动触发,可以通过选择已完成的单元格并使用快捷键 Ctrl + E,或者通过点击功能区中的 数据 > 快速填充 手动激活它。
注意事项:检查填充结果的准确性,特别是当电话号码具有不同的格式时。对于具有不可预测间距、混合格式或嵌入文本的列表,快速填充可能无法很好地工作。
总结建议:快速填充是一种处理一次性或小型数据集的快速方法,但如果原始数据发生变化,它不会动态更新。对于经常更新的列表,请考虑使用公式或 VBA 方法。
使用 Kutools for Excel 将电话号码格式转换为数字
对于寻找更便捷、交互式解决方案的用户,Kutools for Excel 中的 删除字符 工具可以高效地从所选单元格中删除指定的符号——包括破折号、空格、括号等。这种方法非常适合经常处理结构化数据并希望采用快速、菜单驱动方式清理电话号码而不编写公式或代码的用户。
1. 选择包含要转换为数字的电话号码的范围,然后导航至 Kutools > 文本 > 删除字符。
2. 在 删除字符 对话框中,选择 自定义 选项,并在文本框中输入连字符 –。您还可以通过将其他字符添加到框中来指定要删除的其他字符,例如空格、括号或句点。设置完成后,单击 确定 以处理范围。
所选电话号码将立即更新,指定的字符被移除,只留下干净的数字序列,如下所示。
如果您想免费试用(30天)此工具,请点击下载,然后按照上述步骤进行操作。
使用宏去除电话号码中的所有非数字字符
如果您的任务涉及大量混合或不可预测格式的电话号码(包括特殊字符、空格、多余的标点符号、文本甚至国家代码),Excel 的 VBA 宏可以提供一种高度灵活且自动的方式来一次性清理这些条目。这种方法对于大型数据集或重复性清理任务特别有用。
适用场景:如果您的电话号码格式不规则、需要处理许多行,或者公式和内置功能都无法完全满足您的需求,请使用 VBA。然而,使用宏需要将工作簿保存为启用宏的格式 (*.xlsm),并授予宏权限。
步骤:
1. 按 Alt + F11 打开 Visual Basic for Applications 编辑器。在新窗口中,点击 插入 > 模块 创建一个空白模块,然后将以下 VBA 代码复制并粘贴到代码窗口中:
Sub StripNonDigitsFromPhoneNumbers()
Dim xRg As Range
Dim xCell As Range
Dim xDigits As String
Dim i As Integer
Dim xTitleId As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set xRg = Application.Selection
Set xRg = Application.InputBox("Select the range with phone numbers", xTitleId, xRg.Address, Type:=8)
For Each xCell In xRg
xDigits = ""
For i = 1 To Len(xCell.Value)
If Mid(xCell.Value, i, 1) Like "#" Then
xDigits = xDigits & Mid(xCell.Value, i, 1)
End If
Next i
xCell.Value = xDigits
Next xCell
End Sub
2. 然后点击 运行 按钮(或按 F5)。在出现的对话框中,确认或选择您的数据范围。该宏将自动从选定范围内的每个单元格中去除所有非数字字符——仅留下纯数字序列。
参数说明:此宏处理每个单元格中的每个字符,仅将数字追加到结果中。在运行之前,调整选择范围以覆盖所有所需的列/行。
提示与错误提醒:首次运行 VBA 脚本之前,请始终保存您的工作簿,因为更改不能一键撤销。如果遇到宏安全警告,请验证代码来源并根据需要启用宏。在协作环境中,请小心操作以免覆盖关键数据。
总结建议:运行宏后,快速扫描清理后的数据以确保准确性。如果需要国家代码或分机号,请注意这些将被连接到数字字符串中;如有必要,请单独处理这些元素。
相关文章:
最佳Office办公效率工具
🤖 | Kutools AI 助手:以智能执行为基础,彻底革新数据分析 |代码生成 |自定义公式创建|数据分析与图表生成 |调用Kutools函数…… |
热门功能:查找、选中项的背景色或标记重复项 | 删除空行 | 合并列或单元格且不丢失数据 | 四舍五入…… | |
高级LOOKUP:多条件VLookup|多值VLookup|多表查找|模糊查找…… | |
高级下拉列表:快速创建下拉列表 |依赖下拉列表 | 多选下拉列表…… | |
列管理器: 添加指定数量的列 | 移动列 | 切换隐藏列的可见状态 | 比较区域与列…… | |
特色功能:网格聚焦 |设计视图 | 增强编辑栏 | 工作簿及工作表管理器 | 资源库(自动文本) | 日期提取 | 合并数据 | 加密/解密单元格 | 按名单发送电子邮件 | 超级筛选 | 特殊筛选(筛选粗体/倾斜/删除线等)…… | |
15大工具集:12项 文本工具(添加文本、删除特定字符等)|50+种 图表 类型(甘特图等)|40+实用 公式(基于生日计算年龄等)|19项 插入工具(插入二维码、从路径插入图片等)|12项 转换工具(小写金额转大写、汇率转换等)|7项 合并与分割工具(高级合并行、分割单元格等)| …… |
通过Kutools for Excel提升您的Excel技能,体验前所未有的高效办公。 Kutools for Excel提供300多项高级功能,助您提升效率并节省时间。 点击此处获取您最需要的功能……
Office Tab为Office带来多标签界面,让您的工作更加轻松
- 支持在Word、Excel、PowerPoint中进行多标签编辑与阅读。
- 在同一个窗口的新标签页中打开和创建多个文档,而不是分多个窗口。
- 可提升50%的工作效率,每天为您减少数百次鼠标点击!
所有Kutools加载项,一键安装
Kutools for Office套件包含Excel、Word、Outlook和PowerPoint的插件,以及Office Tab Pro,非常适合跨Office应用团队使用。





- 全能套装——Excel、Word、Outlook和PowerPoint插件+Office Tab Pro
- 单一安装包、单一授权——数分钟即可完成设置(支持MSI)
- 协同更高效——提升Office应用间的整体工作效率
- 30天全功能试用——无需注册,无需信用卡
- 超高性价比——比单独购买更实惠