EXCEL:如果多个单元格有值

EXCEL:如果多个单元格有值

我有 3 列,其中一些列有国家,如下所示

I                    J                    K
--------------       -----------------    ----------------
Denmark          
Finland
London               United Kingdom
123 street           London               United Kingdom

问题是我想将国家添加到单个单元格中,而不是将它们放在多个单元格中

L
------------
Denmark
Finland
United Kingdom
United Kingdom

我努力了

=IF(OR(AND(J1=" United Kingdom","United Kingdom",""),AND(K1=" United Kingdom","United Kingdom",""),AND(L1=" United Kingdom","United Kingdom",""),AND(I1=" United Kingdom","United Kingdom","")),"Correct","Wrong")

=IF(OR(J1=" United Kingdom","United Kingdom",""),OR(K1=" United Kingdom","United Kingdom",""),OR(L1=" United Kingdom","United Kingdom",""),OR(I1=" United Kingdom","United Kingdom","")),"Correct","Wrong")

但这给了我一个错误

有人知道为什么这不起作用或者有更好的方法吗?

答案1

尝试一下(在单元格中L1

=IF($K1<>"", $K1, IF($J1<>"", $J1, IF($I1<>"", $I1, "Not Provided")))

尚未测试过但应该可行。

编辑

根据您给出的示例,我假设 K 列要么为空白,要么为国家。如果它可以包含空格,则尝试

=IF(TRIM($K1)<>"", $K1, IF(TRIM($J1)<>"", $J1, IF(TRIM($I1)<>"", $I1, "Not Provided")))

反而。

答案2

我实际上已经使用以下公式解决了这个问题

=IF(OR(OR(TRIM(J1)="United Kingdom"),OR(TRIM(K1)="United Kingdom"),OR(TRIM(L1)="United Kingdom"),OR(TRIM(I1)="United Kingdom")),"Correct","Wrong")

答案3

您的解决方案的替代方案:

列出您的七个国家并创建动态命名范围此列表的。假设您将其命名为CountryList。如果需要,您可以将此列表保留在隐藏的工作表中。使用动态命名范围只是意味着您可以将新国家/地区添加到列表中,而无需调整任何公式

现在在最后一栏输入公式

使用您发布的所有公式OR()TRIM()但不是TRIM(J1)="United Kingdom"用来ISERROR(MATCH(J1, CountryList, 0 ))测试单元格是否与您的范围内的某些内容匹配,而是用来"Correct"INDEX(CountryList, MATCH(J1, CountryList))列表中提取名称

综上所述:

=IF(OR(OR(ISERROR(MATCH(J1, CountryList, 0 ))),OR(ISERROR(MATCH(K1, CountryList, 0 ))),OR(ISERROR(MATCH(L1, CountryList, 0 ))),OR(ISERROR(MATCH(I1, CountryList, 0 )))),INDEX(CountryList, MATCH(J1, CountryList)),"Wrong")

相关内容