用IF同时满足LEN和MID两个条件
来源:百度知道 编辑:UC知道 时间:2024/05/17 01:40:56
=IF(LEN(C1)=11,IF(MID(C1,1,1))=1,"1","0")错在哪?
即如果C1字符=11,且C1第一个字符=1,显示为1,否则显示为0.
公式不能用错在哪,请解答下。
即如果C1字符=11,且C1第一个字符=1,显示为1,否则显示为0.
公式不能用错在哪,请解答下。
你的公式中有几处错误:
1、if函数用法不对:对于同时满足LEN和MID两个条件,应该用 and 函数组成一个逻辑表达式,而不该用if嵌套;
2、mid函数的结果为字符型的,而你的公式中表达式 MID(C1,1,1))=1的等号后面的 1 为数值型,因此该表达式的逻辑值将永远为False,故,等号后面的1应该加上引号;
3、取字符串的第一个字符用mid函数显然不科学,表达式 MID(C1,1,1))="1" 完全可以改成 left(C1)="1" ;
4、IF条件判断的两种结果,完成可以用1和0来表达,没有必要使它的结果为字符型,因此,公式后两个参数 1 和 0 没有必要添加引号
综上,你的公式可以改成:
=IF(and(LEN(C1)=11,MID(C1,1,1)="1"),1,0)
或
=IF(and(LEN(C1)=11,left(C1)="1"),1,0)
其实你的公式还可以进一步简化:
=--and(len(C1)=11,left(C1)="1")
再简化:
=(LEN(C1)=11)*(LEFT(C1)="1")
if len(c1)=11 and left(c1,1)="1" then
debug.? "1"
else
debug.? "0"
end if
你写的方式应该用IIF
=iif(len(c1)=11 and mid(c1,1,1)="1",1,0)
=IF(AND(LEN(C1)=11,MID(C1,1,1)="1"),"1","0")
你在结果1和0上加"",得出的结果是文本格式.
=if(and(len(c1)=11,--left(c1,
excle里IF要同时满足前后的各个条件
asp里len 和 replace同时用时错在哪了?小段代码如下..
strlen 和 len 的区别
=YEAR(TODAY())-1*((LEN(G11)=15)*19&MID(G11,7,((LEN(G11)=18)*2+2)))
TextBox1.Text = Mid(TextBox1.Text, 1, Len(TextBox1.Text) - 1)什么意思
金山毒霸和瑞星两人同时用可以吗?
[Excel问题] 同时满足两列条件的计数与求和!
CAD中的LEN命令怎么用
matlab中fspecial('motion',LEN,THETA)参数LEN和THETA的含义
if dname="" or len(dname)>20 then