If c.Value = "45" or "ab" then
人气:388 ℃ 时间:2020-06-24 08:57:50
解答
不对,需要去掉双引号.两个双引号都去掉吗?都去掉就可以了。为什么If c.Value = "45"没错,加上or就得取消引号呢?你好,我继续给你解答。不知道为什么我点不了继续回答了。首先说的是ab,如果不加引号,它作为变量处理,加了引号为字符串。所以当它作为变量处理时,如果你在程序前面没有对这个变量定义,系统不做任何操作。下面开始说你的问题:If c.Value = "45" or "ab" then,你的这句话是想判断c.Value 等于45或等于ab时吗?如果是的话,你要这么写:If c.Value = 45 or c.Value =ab then。此时45,ab是否加引号,完全是类型的区别。45不加,为数字,加了为字符串。ab不加,为变量,加了,为字符串。而当你写成:If c.Value = "45" or "ab" then ,注意系统的运算顺序,先c.Value = "45",他会返回一个0或1,为bool量,然后会运算0(1)or ab,此时加了引号会报错,因为0(1)为整数,后面"ab"为字符串,无法做or运算。不加引号,ab作为变量,不会报错,而如果前面没有定义,ab当作0处理。
推荐
猜你喜欢