在Excel中将零显示为破折号的8种方法
您的数据中是否有不需要的零值,而您想将它们显示为破折号?
也许您看到太多零,以至于分散了您对一些重要分析的注意力。甚至可能是您的零值没有准确反映它们出现时数据的状态。
Excel 可能会在您认为数据不适用的地方显示零。
在这种情况下,将零显示为破折号 (-
) 可以有效地增强数据的可读性和改善数据的解释性。这篇文章介绍了在 Excel 中将零显示为破折号的所有方法。其中一些方法只是更改显示格式,而其他方法则替换零值本身。
推荐:如何在Excel中查找外部链接
使用会计格式将零显示为破折号
用破折号显示零长期以来一直是会计行业的标准。因此,Excel 包含自己的内置会计格式,将零显示为破折号。
您可以像其他单元格格式一样实现会计格式。
- 首先选择您的数字数据。
- 前往 家 标签。
- 选择 会计 来自 数字格式 落下。
很快,您的数字就会显示该格式的所有特征!
每个数字强制保留两位小数,并使用千位分隔符和左对齐的美元符号 ($)。最重要的是,您的零现在显示为破折号!
使用自定义格式将零显示为破折号
使用自定义格式时,您可以控制如何显示正值和负值。但您也可以控制如何显示零值。
使用自定义格式时,有时最好先选择最符合您需求的格式。然后您可以修改格式以满足您的需求。
以下是应用完整自定义格式的方法。
- 选择 想要应用自定义格式的值的范围。
- 前往 家 选项卡。
- 点击 发射 右下角的图标或 数字 部分。
这将打开 格式化单元格 对话框允许您调整各种单元格格式选项,包括任何数字格式。
💡 提示:您还可以打开 格式化单元格 菜单 Ctrl + 1 键盘快捷键。
- 前往 数字 选项卡中的 格式化单元格 菜单。
- 选择 风俗 选项中的 类别 部分。
- 输入
#,##0;-#,##0;-
格式字符串 类型 场地。 - 按 好的 按钮。
自定义数字格式中使用的格式字符串由三部分组成,每部分之间用 ;
特点。
- 第一部分确定正数使用的格式。
- 第二部分确定负数使用的格式。
- 第三部分确定零值使用的格式。由于第三部分由破折号 (
-
),这会导致零显示为破折号!
以上显示的是结果。
值得注意的是,如果您选择任何包含破折号的单元格(如上所示),公式栏仍会显示零值,这是理所当然的。单元格仍将包含其零值,但格式会使它们显示为破折号。
📝 笔记:如果您选择任何包含破折号的单元格,公式栏仍会显示零值。单元格仍将包含其零值,但格式会使它们显示为破折号。
使用 IF 函数将零显示为破折号
这 如果 函数通过测试单元格是否为零,提供了一种有条件地显示破折号的快捷方法。
= IF ( C3=0, "-", C3 )
上述公式将测试单元格中的值 C3 为零并返回破折号 ("-"
),否则返回原始值。
这会将非零值保留为数字,但带有破折号的单元格实际上是文本值。
推荐:WordPress营销自动化CRM集成插件WP Fusion Premium
使用 TEXT 函数将零显示为破折号
这 文本 函数可以利用本文前面使用的相同自定义格式字符串将零显示为破折号。
= TEXT ( C3, "#,##0;-#,##0;-" )
上述公式将格式化单元格的内容 C3 根据提供的格式字符串 "#,##0;-#,##0;-"
。
该公式的结果将是文本值,因此这可能不是理想的解决方案,具体取决于您需要对格式化值执行的操作。
由于它们是文本,因此您将无法在任何进一步的数值计算中使用这些结果。
使用“查找和替换”将零显示为破折号
Excel 具有“查找和替换”功能,与您可能在 Excel 之外的其他软件产品中看到的功能类似。
您可以使用此功能将零值完全替换为破折号。结果将导致虚线单元格变为文本而不是数字。
按照以下步骤替换任意范围内的零值。
- 选择您想要搜索的单元格。
- 按 Ctrl + H 打开 查找和替换 菜单。
- 添加
0
到 找什么 输入。 - 添加
-
到 用。。。来代替 输入。
这将替换所有零实例(0
) 带破折号 (-
) 在您的选择范围内。
- 勾选 匹配整个单元格内容。
这是该过程的关键部分。匹配整个单元格内容意味着您不会无意中更改值,例如 520
到 52-
。
- 按 全部替换 按钮。
Excel 将用破折号替换您选择的所有零值。
在数据透视表中将零显示为破折号
如果列组合包含零数据,则数据透视表可能会显示一个空行。
例如,当您使用数据透视表显示销售人员自 2021 年以来的年度销售额时,2022 年雇用的任何新销售人员在 2021 年都不会产生任何销售额。
如果您想在 2021 年为这样的新销售人员显示破折号,您首先需要显示空行。
- 首先选择数据透视表中的任意位置,调出 数据透视表字段 窗格。
- 在里面 数据透视表字段 窗格中,选择最底部的字段 行 区域,然后选择 字段设置。
- 在里面 布局与打印 标签,检查 显示没有数据的项目。
- 点击 好的 按钮。
- 现在显示破折号,首先转到 数据透视表分析 功能区标签。
- 选择 选项。
- 前往 布局和格式 选项卡 数据透视表选项 菜单。
- 检查 对于空单元格显示 选项并粘贴以下内容 破折号 特点 (
–
)进入该领域。
需要强调的是,标准键盘破折号字符在这里不起作用,因此 破折号 字符是一个类似的选择。
- 点击 好的 按钮。
如您所见,您的新销售员在销售额为零的年份显示了一个破折号!
推荐:如何在Microsoft Excel中使用页眉和页脚
使用 VBA 将零显示为破折号
VBA 是自动执行 Excel 中大多数任务的好方法。
您也可以使用 VBA 以类似的方式替换零 查找和替换 特征。
但这样您就无需输入任何值来查找或更新设置即可完成工作。代码会处理这些!
您可以创建一个宏,它将循环遍历选定的范围并识别任何带有零的单元格并将其替换为破折号。
按照以下步骤打开 Visual Basic 编辑器。
- 前往 开发人员 标签。
- 选择 Visual Basic 命令打开编辑器。
您可能看不到 开发人员 选项卡,因为它默认处于隐藏状态。您可以 启用 开发人员 功能区中的标签 如果你还没有看到。你也可以使用 Alt + F11 键盘快捷键直接打开 Visual Basic 编辑器。
- 前往 插入 Visual Basic 编辑器的菜单。
- 选择 模块 选项。
Sub ReplaceZeros()
Dim selectedRange As Range
Set selectedRange = Application.Selection
For Each i In selectedRange.Cells
If i.Value = 0 And Len(i.Value) > 0 Then
i.Value = "-"
End If
Next i
End Sub
这将创建一个新模块,您可以在其中复制并粘贴上述代码。
此代码将循环遍历选定范围内的每个单元格并检查其值是否为零。如果值为零,则单元格内容将更新为破折号。
注意 Len
用于检查单元格内容长度的函数。这是必要的,因为代码将空单元格视为零,因此检查长度可避免更新空单元格。
现在您可以选择工作簿中的任意范围并 运行 VBA 代码 来代替零!
使用 Office 脚本将零显示为破折号
VBA 并不是在 Excel 中实现自动化的唯一方法。如果您使用 Microsoft 365 商业计划在线版 Excel,则还可以使用 Office 脚本。
在 Web 浏览器中打开 Excel 工作簿,然后转到 自动化 选项卡,然后选择 新脚本 选项。
function main(workbook: ExcelScript.Workbook) {
let range = workbook.getSelectedRange();
let rowCount = range.getRowCount();
let colCount = range.getColumnCount();
for (let row = 0; row 0) {
currCell.setValue("-");
};
};
};
}
这将打开 代码编辑器 在工作簿的右侧。然后您可以将上述代码复制并粘贴到 代码编辑器 并按下 保存脚本 按钮。
此代码将逐个单元格循环遍历选定范围。如果单元格值为零,则其值将设置为破折号。
与 VBA 一样, length
检查单元格内容以确保空白单元格不会被错误更新。
要测试您的代码,请选择所需的范围并按下 跑步 按钮 代码编辑器。完成后,您的零将被替换为破折号!
结论
在 Excel 中将零显示为破折号的原因有很多,从简单的美观到强化数据的解释方式。
最不具侵入性的选择是通过使用自定义格式或会计格式来改变其显示,其中会计格式特别适合货币数据。
其他方法实际上会改变您的底层单元格值,因此请记住,您进行的任何数值计算都可能会受到这些更改的影响。
VBA 和 Office Scripts 方法的另一个优点是,一旦经过验证,就可以根据需要快速可靠地重新应用它们。
您是否需要将零值显示为破折号?您是如何做到的?请在下方评论中告诉我!