Excel IF语句无法按预期工作

时间:2017-03-20 19:26:12

标签: excel excel-formula

美好的一天。

我正在尝试在Excel工作表中使用以下if语句,以查看是否包含同一excel文件中辅助工作表中2个分隔列上列出的任何字符串。这些词是巴西葡萄牙语,但并不重要:

IF语句:它搜索单元格,查找它是否包含第一个列表中的任何单词,否则它会在单元格中搜索第二个列表中的任何单词,如果它没有找到任何单词,它只是说不确定:

=IF(ISNUMBER(SEARCH('Sheet2'!$A$1:$A$14;D2));"Cancel";IF(ISNUMBER(SEARCH('Sheet2'!$B$1:$B$16;D2));"Sincronize";"Inconclusiv"))

A栏中的单词列表:

Cancelar
Cancelamento
Desativar
Desativação
Desativacao
Exclusão
Excluir

B栏中的单词列表:

Sincronização
Sincronizar
Sincronia
Restaurar
Restauração
Restauracao
Recuperar
Recuperação

无论出于何种原因,这种情况有效,有时却没有,所以为了测试它,我决定简单地将“Cancelar”写入每个单元格并使用上面的语句。它仍然不起作用,我不知道原因,这是我的excel表显示的一个例子。

Cancelar; Cancel
Cancelar; Inconclusive
Cancelar; Inconclusive
Cancelar; Inconclusive
Cancelar; Inconclusive
Cancelar; Inconclusive
Cancelar; Inconclusive
Cancelar; Cancel

我不知道是什么导致了这个错误。

2 个答案:

答案 0 :(得分:1)

我认为你最好使用VLOOKUP而不是搜索。

=IF(VLOOKUP(D2;'Sheet2'!$A$1:$A$14;1;false)=D2;"Cancel";IF(VLOOKUP(D2;'Sheet2'!$B$1:$B$16;1;FALSE)=D2;"Sincronize";"Inconclusiv"))

答案 1 :(得分:1)

在SUMPRODUCT()

中包装ISNUMBER

并且,将SEARCH参数限制为仅列表中的数据,如果包含空单元格,则会发现误报。一切都可以找到""

=IF(SUMPRODUCT(--ISNUMBER(SEARCH(Sheet2!$A$1:$A$7;D2)));"Cancel";IF(SUMPRODUCT(--ISNUMBER(SEARCH(Sheet2!$B$1:$B$8;D2)));"Sincronize";"Inconclusiv"))