我可以使用什么公式来格式化单元格,以便当我输入数字时,后面会有 au(我现在将其设置为 ###,###u),如果它是空白的,单元格中会有“N/A”?提前谢谢您。
答案1
假设 ,您所需的A2
可能是:=IF(ISBLANK(A2),"N/A",TEXT(A2,"###,###u"))
。
答案2
如果没有 VBA(当然,它几乎可以做任何想做的事情),这是无法做到的。
数字后面的“u”很简单,正如您自己和另一位回答者所指出的。但是,在任何情况下,无论是正常格式还是条件格式,Excel 都不会触发格式,只有当单元格内容为空白时才会触发格式。
因此,例如,您可能将正常格式设置为###,###u;-###,###u;\N\/\A;@
期望,因为 Excel 通常将空白视为 0,所以零值格式位置中的 N/A 将满足您的要求。但事实并非如此,因为 Excel 在此例中将空白视为不同。
您可能会尝试ISBLANK(A1)
在条件格式规则中使用公式之类的东西,但尽管它会触发规则在其他单元格上起作用,但不会触发规则在其自身上起作用。我想说“去想想吧……”但如果您以正确的方式看待它,这实际上是可以理解的:您正在操作的单元格(例如 C1)正在由规则格式化,而不是实际的空白单元格。(我怀疑如果两者都是空白的,并且您具有良好或更好的 VBA 技能,您可以确定两者都没有受到影响。所以,实际上与这个想法一致。)
问题的根源在于实际的空白,而不是空白的外观,而且由于您想要实际的空白,因此 Excel 本身无法解决它。
唯一可行的解决方案是将值放入您希望执行此操作的所有单元格中。""
这是想法,而不是 7 或“horse”,并且假设您不希望有人在输入数据时不得不四处寻找“N/A”值(他们更喜欢在一堵空单元格中输入数据)。尽管如此,他们随机输入错误的单元格后跟Delete
's 仍然会搞砸这一切。从实际角度来看,这不是太可行。
但话又说回来,基本的、良好的 VBA 技能以及对您的情况的准确了解肯定可以为您解决问题。