胡元 发表于 2024-2-1 11:50:28

ISBLANK()和=""有什么区别吗

服务端命令里有个参数"导体绕包材料预设",当为空值时,用ISBLANK(导体绕包材料预设)判断为false,用导体绕包材料预设="",判断TRUE,但在excel里测试返回的都TRUE,这是为啥

Nathan.guo 发表于 2024-2-1 11:50:29

胡元 发表于 2024-2-7 16:50
谢谢老师答复,但是有一事不明,=IF(--防火层内绕包层数预设>0,防火层内绕包层数预设,1)比如这个变量公式," ...

大佬,这个是因为,一开始服务端命令参数我们什么都不填时,他默认就是null;
第二次测试我们填了数字,因此正常返回;
第三次测试,因为模式使用第二次测试的值,因此此时一ing有数据了,而我们将它删除掉,就变成空字符串,也就是null了,所以在某些特性测试场景下,就会发现和第一次测试结果不同~~

胡元 发表于 2024-2-1 13:05:54

本帖最后由 胡元 于 2024-2-1 13:08 编辑

在服务段命令里测试,参数值给过值再清空和没给过值,不一样,返回false浏览器里为True,不知道 算不算是bug

Lay.Li 发表于 2024-2-1 17:53:40


大佬,我这边儿测试不传值,用isblank判断就是true哈,你那边是有什么特殊的操作吗,给过值再清空是什么意思呢,建议您可以发一个demo上来,我们看一下您demo中的设置,这样我们也可以更好的帮助到您:loveliness:

胡元 发表于 2024-2-2 08:47:51

Lay.Li 发表于 2024-2-1 17:53
大佬,我这边儿测试不传值,用isblank判断就是true哈,你那边是有什么特殊的操作吗,给过值再清空是什么 ...

给过值再清空的意思是,在服务端命令里点测试,给参数值,关闭测试结果,再点测试,把原来的给过值的参数给空值.上面测试结果里的的false和TRUE,是同一个命令在两种环境下的不同结果

Nathan.guo 发表于 2024-2-2 16:52:48

胡元 发表于 2024-2-2 08:47
给过值再清空的意思是,在服务端命令里点测试,给参数值,关闭测试结果,再点测试,把原来的给过值的参数给空 ...

大佬,如果只是简单测试的话,是不需要在命令中手动清空参数值的,系统默认显示上次测试的参数,只是为了大家测试方便~~

其次对于 null 和 ""本身的意义是不一样的,一个代表空,一个代表空字符串

胡元 发表于 2024-2-5 11:46:47

Nathan.guo 发表于 2024-2-2 16:52
大佬,如果只是简单测试的话,是不需要在命令中手动清空参数值的,系统默认显示上次测试的参数,只是为了 ...

null 和 ""一个代表空,一个代表空字符串,用ISBLANK()结果是一样的吗?

Nathan.guo 发表于 2024-2-5 18:20:40

本帖最后由 Nathan.guo 于 2024-2-5 18:21 编辑

胡元 发表于 2024-2-5 11:46
null 和 ""一个代表空,一个代表空字符串,用ISBLANK()结果是一样的吗?
大佬,这个咱们直接测试下就明白了,ISBLANK公式是判断引用的单元格是否为空单元格,因此无论是null还是“”对于公式而言都是空,所以结果是一致的~~

而且网上对null和""的区别也有很多介绍哦~~

https://blog.csdn.net/QMW19910301/article/details/67079190

胡元 发表于 2024-2-7 16:50:12

本帖最后由 胡元 于 2024-2-7 16:56 编辑

Nathan.guo 发表于 2024-2-5 18:20
大佬,这个咱们直接测试下就明白了,ISBLANK公式是判断引用的单元格是否为空单元格,因此无论是null还是 ...
谢谢老师答复,但是有一事不明,=IF(--防火层内绕包层数预设>0,防火层内绕包层数预设,1)比如这个变量公式,"防火层内绕包层数预设"是服务端命令参数,第一次测试,没有给值,结果为1,第二次测试,给个值,结果是给的值,第三次测试,删了第二次测试给的值,成空值,结果就成了 #VALUE!,把公式改成=IF(防火层内绕包层数预设="",1,防火层内绕包层数预设),就正常了,用IF(ISBLANK(防火层内绕包层数预设),1,防火层内绕包层数预设)和IF(--防火层内绕包层数预设>0,防火层内绕包层数预设,1)在设计器里的效果一样,但在浏览器里却是的IF(防火层内绕包层数预设="",1,防火层内绕包层数预设)结果一致的
页: [1]
查看完整版本: ISBLANK()和=""有什么区别吗