美好的一天。
我正在尝试在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
我不知道是什么导致了这个错误。
答案 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"))