![如何将包含 0 或空白值的 Excel 单元格自定义格式化为 -?](https://linux22.com/image/1611228/%E5%A6%82%E4%BD%95%E5%B0%86%E5%8C%85%E5%90%AB%200%20%E6%88%96%E7%A9%BA%E7%99%BD%E5%80%BC%E7%9A%84%20Excel%20%E5%8D%95%E5%85%83%E6%A0%BC%E8%87%AA%E5%AE%9A%E4%B9%89%E6%A0%BC%E5%BC%8F%E5%8C%96%E4%B8%BA%20-%EF%BC%9F.png)
我想格式化 Excel 中某一列的单元格(具有常规值或数字值)。因此,如果某个单元格中有 0,我想用“-”替换。因此,我使用自定义格式 *
(* #,##0(英文):(*(#,##0);(*“-”??(英文):(@_)
*
但是如果单元格的值为 0 或为空白,我该如何修改上述格式以便也显示空白值的“-”?
答案1
对于问题的第一部分,可以使用您正在尝试的单元格格式,也可以使用这个。
0;-0;—;@
BLANK
据我所知Dash
,Excel 没有提供任何自定义单元格格式,但是确实还有其他一些方法。
方法 1。
- 选择单元格,按Ctrl+G。
- 选择空格选项。
- 类型
-
。 - 最后按Ctrl+Enter。
方法 2:
选择所需的单元格范围。
- 按Ctrl+H
- 为了找什么将该字段留空。
- 为了用。。。来代替类型
-
。 - 最后按全部替换。
方法 3:
您可以使用此 VBA 宏作为米模块。
Sub ReplaceBlanks()
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "Replace Blanks & Zeros"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
If Rng.Value = "" Or Rng.Value = 0 Then
Rng.Value = "-"
End If
Rng.HorizontalAlignment = xlCenter
Next
End Sub
注意:
这将用破折号填充选定范围内所有包含空白和零的单元格。
- 按下Alt+F11 或R右键单击 Sheet TAB,然后点击五查看代码,打开 VB 编辑器。
- 从我插入菜单米模块。
- C奥皮&磷粘贴此代码。
- 将工作簿另存为米acro 已启用。
- 最后R联合国宏。
方法 4:
- 假设应用公式后结果为零。
=IF(SUM(A1:E1)=0,"-",SUM(A1:E1))