如果单元格为空白,我想使用自定义格式添加文本。我见过在值高于或低于某个值时添加文本的情况。如果单元格为空白,可以向单元格添加文本吗?我尝试了以下方法,但没有成功
[=0]"Enter value"* 0;
[=""]"Enter value"* 0;
答案1
嗯,这可以做到,但也不可以。你可以做到看就像您需要的格式一样,如下图所示。单元格 C3 和单元格 C5 的格式相同,C5 中的值:
当您在单元格中输入文本时,在本例中为 C5,文本会消失。秘密在于一个像素的列,即 B 列。B3 包含“输入值”,格式为红色粗体。这是一个小技巧,但我用它取得了很好的效果。
答案2
选择您的单元格并转到数字格式对话框,从左侧列表中选择自定义。然后在类型文本框中输入:
#,##0.00;-#,##0.00;"Enter value"
第一个分号之前的条目指定正数的格式,第一个和第二个分号之间的条目指定负数的格式。将这些更改为您自己的数据的正确格式。第三个条目指定零的格式。
如果您以此方式格式化单元格并在单元格中输入 0,则单元格将包含零,但将显示您指定的任何文本。
这仅在单元格包含 0 时才有效。如果没有 jmaglasang 建议的另一个单元格中的某种“辅助”函数,或者没有 Worksheet_Change 事件上的某些 VBA 代码,我想不出任何方法来对文本输入执行此操作。
如果您想要 VBA 解决方案,请告诉我。但是,这意味着用户必须启用宏才能使其工作。
答案3
只需添加到 @dendarii 提供的答案中 — — 您可以添加第四个,用于文本。例如,使用此数字格式:
“我的正数”;“我的负数”;“我的零”;“我的文本”
...如果输入任何非数字文本,单元格将显示“我的文本”。
然而,不幸的是,空白单元格没有第五个选项。
因此,如果您的场景允许在单元格中默认使用空格字符,那么您可以使用第四个选项来实现。但如果用户从单元格中删除该空格字符,将其留空,您的自定义显示文本就会消失。
答案4
如果我理解了这一点,你可以尝试:
IF(condition,TrueValue,FalseValue)
空值在评估时被视为假。