find()函数查找后符合条件返回值的判断

在程序中有如下代码,用于在B列中查找已知的字符串s:

a = Columns.Item("B").Find(s);

但接下来判断是否找到符合条件的单元格时,判断的条件却让我费了不少周折。

按照网上给出的答案,可以用条件typeof a !="undefined"来判断,可试验后结果并非如此,后来又反复操作,终于发现用typeof a !="object"可以实现这一功能。如果查找到符合条件的结果,返回值则为typeof a ="function"。

不知以上现象是否为特例?还是在所有情况下通用。

(当前表中放置了一个按钮控件,用于执行宏代码)

内蒙古
浏览 1766
收藏
2
分享
2 +1
5
+1
全部评论 5
 
熊
同样的摸索中,以下截图是官方文档案例。 正确判断用法应该用 a==null,测试为typeof a == function 时,a() == Value2。 官方文档的Address 我测试typeof 也等于function,循环 用c.Address != firstAddress 我也理解不了。 Address() 加个括号输出 $B$5 这种绝对地址。
· 广东省
回复
喆
在我这里用a != null不成功,我的代码是在一个长字符串中查找含有指定数字的单元格。(不知为什么,这里面不让粘贴代码,显示下面有红线)
· 内蒙古
回复
 
喆
我也是刚从原来的VBA宏转到JS宏,很多功能还在摸索中。
· 内蒙古
回复
 
Mr Chen
Mr Chen Lv.2 潜力创作者KVPWPS寻令官

Lv.2潜力创作者

在学习中
· 甘肃省
回复