=IF(AND(D2="",E2=all),"上午空挡",IF(AND(D2=all,E2=""),"下午空档",IF(AND(D2=all,E2=all),"无空档",IF(AND(D2="",E2=""),"全天空挡"))))这一串的话是直接报#name?错=IF(AND(D6="",E6="all"),"上午空挡",IF(AND(D6="all",E6=""),"下午空档",IF(AND(D6="all",E6="all"),"无空档",IF(AND(D6="",E6=""),"全天空挡"))))这一串明显的“all”错误,但是可以用。求大佬指点,应该把all换成啥才能表示任意字符。也就是我不管输入123 还是sadsad一串乱码 都是识别单元格里有内容的
自己把问题想得太复杂了。主要是没有完全理解并掌握IF函数的特点:前面的IF考虑的了情况,后面就只剩下另外的情况了!加粗内容是很多在百度中回答问题的人也没有真正掌握的。
公式很简单:
=IF(COUNTA(D2:E2)=0,"全天空档",IF(D2="","上午空档",IF(E2="","下午空档","全天无空")))
第1个IF,考虑D2、E2均为空,第2个IF就只要考虑“剩下另外的情况”了——至少有一个单元格中有内容!
所以第2个IF先看D2是否为空,如果为空,那么E2必有内容(all——其实应该是anything——哈哈),所以是上午空档。
再来第3个IF,D2也不为空了,那么看E2是否为空,如果为空,那么就是下午空档了!
最后还需要IF吗?显然不需要了,因为“剩下另外的情况”就只一种可能了,那就是:D2、E2均不为空!所以直接“全天无空”!