俞木发
是零都不显示 工作表中全局设置
因为0表示没有数据,这样在制作一些数据的时候,如果直接显示0并不好看。比如公司业务员提成,需要达到一定的销售额后才能提成数据,对于没有达到定额数据的业务员,默认提成就会显示为0,为了不伤业务员的自尊,现在可以让工作表中的所有0元都不显示。
按提示输入数据后,点击“文件→选项→高级”,在打开的窗口中右侧窗格“此工作表的显示选项(s)”下,去除“在具有零值的单元格中显示零”前的勾选(图1)。
这样返回Excel工作表,原来业务员是0元提成的单元格就会变为空白,不会再显示0了(图2)。
不过上述操作只是对当前工作表生效,如果当前工作簿有很多工作表,那么我们还需要对每一个工作表进行设置。如果需要对整个工作簿进行设置,那就需要借助VBA脚本实现。
点击“开发工具→插入→模块”,打开后输入下列的代码到模块窗口(图3)。
Sub 零值不显示()
Sheets.Select
ActiveWindow.DisplayZeros = False
End Sub
这样会在当前工作簿新建一个名为“零值不显示”的宏,当需要将整个工作簿的零值均不显示的时候,只要点击“开发工具→宏→零值不显示”,点击“执行”,这样当前工作簿中所有工作表的零值均不会再显示(图4)。
如果在其他工作表中需要执行同样的设置,我们可以将原来的数据清空后,将文件保存为“启用宏”的工作簿,以后只要在其中执行上述宏即可。
自定義格式 指定行列的零不显示
上述方法是对整个工作表或工作簿生效,很多时候我们可能只是希望某特定行列的零不显示,而不是整个工作表均不显示。比如对于上述例子,现在只是需要C列单元格的零不显示,而其他单元格显示正常,那么可以使用自定义单元格的方式实现。
全选C列,右击选择“设置单元格格式”,切换到“自定义”,然后在右侧类型下输入[=0]""自定义格式,即将该列单元格是零值时显示为空(图5)。
返回Excel窗口,这样当数据在C列的值为零时,单元格就不会再显示为“0”,而其他单元格则使用默认格式继续显示为“0”了(图6)。
强制显示 零显示为指定的值
对于一些报表,零值可能并不是表示“0”。比如在一些检验报表中,如果检测不良率为0,那么应该显示为“没有不良,优秀”(图7)。对于这类特殊的零值,现在可以借助IF函数将其强制显示为特定的数值。
在C1输入和B1一样的内容,接着定位到C2,输入公式“=IF(B2=0,"没有不良,优秀",B2)”。公司的意思是假如B2单元格的值等于零,则显示为“没有不良,优秀”(可以任意进行自定义文本显示),否则显示为原值。将公示下拉后,只要B列单元格是零值,那么在C列就会自动显示为“没有不良,优秀”的字符(图8)。
当然为了不出现原来的零值,还可以右击B列选择“隐藏”,这样只要B列单元格检测的不良值为0,则在C列会自动显示为上述设定的字符了。
特定区域设置 查找与替换
对于类似零值需要替换为特定字符的,我们也可以直接使用查找与替换组件进行处理。首先在Excel中选中需要替换零值的区域,如果有多个连续的区域需要替换,则可以按住Ctrl键多选(图9)。
接着点击“开始→查找与替换”,展开“更多选项”,搜索按列进行,在查找框输入“0”,在替换为输入需要替换的内容,最后点击“全部替换”。这样被选择区域的零值即可替换为指定的字符,未选择区域则继续保持默认的显示(图10)。endprint