如何比较之下specied两个薄片列,在Sheet1中的位置(列)的字符串但只有部分将只匹配字符串在Sheet2中的位置(列)的一部分? Sheet 2中在Sheet位置(列)和位置(列)的第一两个字符的1.only第一两个字符应该匹配。 2.仅在Sheet Sheet 2中位置的任何两个字符(列)和位置(列)中的任意两个字符应该匹配。请帮忙
Location(sheet1) Location(sheet2)
____________________________________________
india- north USxcs
India-west Indiaasd
India- east Indiaavvds
India- south Africassdcasv
US- north Africavasvdsa
us-west UKsacvavsdv
uk- east Indiacascsa
uk- south UScssca
Africa-middle Indiacsasca
Africa-south Africaccc
Africa-east UKcac
问题1,您可以使用MID功能的前两个字符从每个单元格的值提取并进行比较。
问题2有如果你能接受串的预定的最大长度的溶液。这不是一个很好的解决方案! if语句,基本上“展开循环”您可以使用嵌套。本实施例比较对A1的长度超过12个字符的单元格A1和B1:
=IF(IFERROR(FIND(MID(A1,1,2),B1,1),0)>0,TRUE,
IF(IFERROR(FIND(MID(A1,2,2),B1,1),0)>0,TRUE,
IF(IFERROR(FIND(MID(A1,3,2),B1,1),0)>0,TRUE,
IF(IFERROR(FIND(MID(A1,4,2),B1,1),0)>0,TRUE,
IF(IFERROR(FIND(MID(A1,5,2),B1,1),0)>0,TRUE,
IF(IFERROR(FIND(MID(A1,6,2),B1,1),0)>0,TRUE,
IF(IFERROR(FIND(MID(A1,7,2),B1,1),0)>0,TRUE,
IF(IFERROR(FIND(MID(A1,8,2),B1,1),0)>0,TRUE,
IF(IFERROR(FIND(MID(A1,9,2),B1,1),0)>0,TRUE,
IF(IFERROR(FIND(MID(A1,10,2),B1,1),0)>0,TRUE,
IF(IFERROR(FIND(MID(A1,11,2),B1,1),0)>0,TRUE,
FALSE
)
)
)
)
)
)
)
)
)
)
)
感谢詹姆斯·詹金斯此更新
这似乎更旧版本的Excel中有7个嵌套函数的限制。您可以解决这个(如果你不介意让你的电子表格更难看)在相邻单元格的公式串联起来。事实上,如果你想获得真正的创意,你可以使用列索引来计算偏移的搜索,是这样的:
=IF(IFERROR(FIND(MID($A1,(COLUMN(C1) - 3) * 6 + 1, 2), $B1, 1),0)>0,TRUE,
...repeat with +2, +3, +4, +5
if(D2 = FALSE, FALSE, TRUE)
)))))))
然后,如果你需要更多的字符串长度列可以被复制的权利。注意最内“如果”应强制TRUE或FALSE值时,相邻的列是空白的。