Excel匹配IF语句未正确评估

时间:2016-10-19 15:27:29

标签: excel excel-formula

我在以下结构中有两列

     A    B
1    49   4922039670

我能够将=LEN(A1)评估为2,将=LEFT(B1,2)评估为49,将=LEFT(B1,LEN(A1))评估为49。但是,当我尝试评估=IF(LEFT(B1,LEN(A1))=A1,TRUE,FALSE)时,它会评估FALSE。我不知道为什么。我试图将A列和B列更改为不同的匹配格式,但它仍然只是评估FALSE

不完全确定我做错了什么。

2 个答案:

答案 0 :(得分:3)

也许这取决于版本,但在我的Excel中,你将你的号码4922隐含到一个字符串并且49<> '49'

要么同时制作两个字符串,要么同时制作两个数字,例如:

=IF(LEFT(B1,LEN(A1))=""&A1,TRUE,FALSE)

""&<a number>将空字符串与数字相连,结果将是一个字符串 您可以使用“TEXT”功能或 - 如果您确定,两者都是数字 - 请使用“VALUE

=IF(VALUE(LEFT(B1,LEN(A1)))=A1,TRUE,FALSE)

使文字更稳定

答案 1 :(得分:1)

将字符串(FALSE给出的内容)与整数进行比较将为=LEFT(B1,LEN(A1))=49 //FALSE

=LEFT(B1,LEN(A1))="49"  //TRUE

你想要

=LEFT(B1,LEN(A1))=TEXT(A1, "0")

所以:

=EXACT(LEFT(B1,LEN(A1)),A1)

或者:

MergeSequentialChecks