如何在 Excel 中将 9 位邮政编码转换为 5 位?

在美国,标准邮政编码通常由 5 位数字组成,但某些数据列表可能包含 9 位邮政编码(格式如“12345-6789”)。如果您仅需前 5 位主编码用于邮件分拣、生成报告或与其他数据库匹配等任务,这种完整格式可能会带来不便。在 Excel 中,有哪些高效方法可将整列此类扩展邮政编码快速转换为 5 位形式?
使用公式将 9 位邮政编码转换为 5 位邮政编码
当您只需在 Excel 中保留 9 位邮政编码的前 5 位数字时——无论您的邮政编码是以纯数字字符串显示,还是采用“12345-6789”格式——公式都能为您提供一种简便的解决方案。
说明:LEFT 公式可提取单元格值的前 5 位数字。无论邮政编码显示为“12345-6789”还是简单的 9 位数字字符串,只要您需要前 5 位数字,此方法均适用。
适用场景:此方法适用于所有邮政编码均以正确基础开头且无需验证格式的情况。
在空白单元格(例如 B2)中输入以下公式:
按 Enter 确认后,向下拖动填充柄,即可将公式应用到列表其余部分。每个单元格现在仅显示对应邮政编码的前 5 位数字。
提示:如果您的邮政编码可能包含空格或其他分隔符,或格式不一致,请先检查是否含有非标准格式字符,并考虑在提取前使用 TRIM 或 SUBSTITUTE 函数清理数据。

注意:如果遇到错误或意外结果,请检查原始单元格是否包含少于 5 位数字、多余空格,或是否被设置为数字格式而非文本格式。这些问题可能会影响公式输出。
使用实用功能将 9 位邮政编码转换为 5 位邮政编码
如果您已安装 Kutools for Excel,其删除某位置字符功能可轻松将 9 位邮政编码缩短为 5 位,操作极为简便。此方法适用于快速处理大型列表,无需输入公式或担心单元格格式。
提示:要使用 Kutools for Excel 的删除某位置字符功能,请先下载并安装该插件,即可快速轻松地体验高效操作!
安装 Kutools for Excel 后,请按以下步骤操作:
1. 将邮政编码单元格格式设置为文本:选择您的列表,转到开始选项卡,在数字格式下拉菜单中选择文本。此步骤可有效防止 Excel 删除前导零。

2. 单击 Kutools > 文本 > 删除某位置字符:

3. 在删除某位置字符对话框中,在 5 框中输入数字,从从右侧下拉菜单中选择位置(从右侧删除 5 个字符将保留前 5 位数字),然后单击确定。您的邮政编码将立即被截断为 5 位:
![]() | ![]() | ![]() |
提示:请确保邮政编码长度统一,且不含意外字符或分隔符。若格式混杂,请务必仔细检查批量操作的效果。
立即点击下载 Kutools for Excel,免费试用!
使用“文本分列”将 9 位邮政编码转换为 5 位邮政编码
如果您的邮政编码采用文本分列格式并带有连字符(例如“12345-6789”),Excel 的该功能可快速精准地将其拆分。此方法会将您的 9 位编码分为两列,让您轻松保留前 5 位数字。
适用场景:最适合用于邮政编码始终以连字符分隔的列表,且您希望保留主编码用于邮寄或记录。
1. 请选择包含 9 位邮政编码的列。
2. 转到数据选项卡,然后单击文本分列,即可打开设置向导。
3. 选择分隔符号,然后点击下一步。
4. 在分隔符号下,勾选其他,并在输入框中键入连字符-作为分隔符,然后单击下一步。
5. 如有需要,请指定目标单元格,然后单击完成,您的邮政编码将被拆分,前五位数字保留在第一列中。
提示:拆分后,您可以删除或忽略第二列中包含的邮政编码扩展部分。
注意:对于未使用连字符或格式不统一的邮政编码,此方法可能不适用。请确保您的数据已标准化,或考虑选用本文中的其他方法之一。
使用 VBA 宏将 9 位邮政编码转换为 5 位邮政编码
对于自动化批量处理任务(尤其是处理大型电子表格或重复性操作),您可以借助 VBA 宏,将所选区域内的所有邮政编码统一截取为前 5 位数字。当您的数据格式不一致、包含前导零,或希望在无需公式与手动干预的前提下实现批量转换时,这一方法尤为高效实用。
适用场景:适用于高级用户或需定期处理格式多样的长列表。只需选中相关区域,宏即可自动强制统一邮政编码长度。
1. 打开 Excel,然后单击开发工具 > Visual Basic。在 Microsoft Visual Basic for Applications 窗口中,选择插入 > 模块。
2. 将以下代码粘贴到模块区域:
Sub TrimZipCodesToFiveDigits()
Dim WorkRng As Range
Dim Rng As Range
Dim xTitleId As String
Dim zipValue As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Select Zip Code Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
zipValue = Rng.Value
If Len(zipValue) >= 5 Then
Rng.Value = Left(zipValue, 5)
End If
Next
End Sub 3. 在 VBA 窗口中,单击
运行按钮以执行代码,随后将弹出对话框供您选择邮政编码范围。确认后,所选单元格中的邮政编码将自动缩短为前 5 位数字。
提示与注意事项:运行宏前,请务必备份数据,以防意外丢失。若邮政编码包含特殊字符或格式不一致,请确认输出结果符合预期。
故障排除:如果宏运行出错,请确认目标区域中不含受保护的工作表、合并单元格或非数值数据。您可调整代码以妥善处理此类情况,或提前清理数据,确保顺利执行!
更多相关的邮政编码文章:
- 从 Excel 地址中提取州、邮政编码或城市
- 如何从地址单元格中提取州、邮政编码或城市到单独的单元格?本文将为您展示解决此问题的实用公式,欢迎继续阅读以获取详细信息。
- 对混合邮政编码(5 位和 9 位)在 Excel 中按升序排序
- 众所周知,邮政编码分为两种类型:5 位数和 9 位数。当列表中同时包含这两种格式时,若需根据前五位基本数字对邮政编码进行排序(如下图所示),您该如何快速处理?
- 超级编辑栏(轻松编辑多行文本和公式);阅读版式(轻松阅读和编辑大量单元格);粘贴到筛选范围……
- 合并单元格/行/列并保留数据;分割单元格内容;合并重复行并求和/求平均值……防止重复项单元格;比较区域……
- 选择重复或唯一行;选择空白行(所有单元格均为空);超级查找和模糊查找多个工作簿中的内容;随机选择……
- 精准公式复制多个单元格而不更改公式引用;自动创建引用到多个工作表;插入项目符号、复选框等更多功能……
- 收藏并快速插入公式、区域、图表和图片;加密单元格并设置密码;创建邮件列表并发送电子邮件……
- 提取文本、添加文本、删除某位置字符、删除空格;创建并打印数据分页统计;在单元格内容与批注之间转换……
- 超级筛选(保存并应用筛选方案到其他工作表);高级排序按月/周/日、频率等分组;特殊筛选按加粗、倾斜等格式……
- 合并工作簿和工作表;汇总表格基于关键列;分割数据到多个工作表;批量转换 xls、xlsx 和 PDF……
- 数据透视表按周数、星期几等分组……显示未锁定、选区锁定并以不同颜色标识;高亮显示包含公式/名称的单元格……

- 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中启用标签式编辑与阅读,大幅提升多文档操作效率!
- 在同一个窗口的新标签页中打开并创建多个文档,而非在新窗口中操作。
- 将您的工作效率提升 50%,每天减少数百次鼠标点击!



