0

我有一个简单的函数来检查页面上的文本。它首先检查特定参数是否有值,如果有则执行代码,否则退出函数。

例子:

Function ck(reqA,reqB,optC)
IF optC <> "" Then
...run code
End If
End Function
ck(A,B,C)

变量 C 指向一个可能包含也可能不包含值的数据表。如果 C 是参数中的唯一值,则该函数可以正常工作。我遇到的问题是偶尔需要将某种形式的静态文本连接到 C,例如:

ck(A,B,"Jibberish " & C)

在上面的示例中, optC 始终评估为 TRUE,因为找到了字符串“Jibberish”。我正在寻找一种忽略任何字符串的方法,只在执行代码之前检查实际变量 C 是否为空。建议?

4

1 回答 1

1

在您的接收函数中提供静态文本,例如

Function ck(reqA,reqB,optC)
IF optC <> "" Then
 optC = "jibberish " & optC
End If
End Function
ck(A,B,C)

或者检查是否只有静态文本

Function ck(reqA,reqB,optC)
IF optC > "jibberish " Then
...run code
End If
End Function
ck(A,B,C)

如果“静态”文本也是可变的,并且您无法区分 optC 的两个部分,那么如果不调整调用函数,您就无法做到这一点,在这种情况下,只需添加一个参数,以便您可以检查是否其中一个是空的

编辑:我认为你最好的选择是用一个像样的编辑器(Sublime Text 或类似的东西)进行搜索和替换,然后用正则表达式搜索 ck(A,B,"xxxxxxxx" & C) 并用ck(A,B,"xxxxxxxx|" & C) (将 '" &' 替换为 '|" &',通过检查特殊字符 |(或任何其他字符)来调整 ck 函数,以便查看这是否是最后一个字符与否以及函数是否需要执行。如果需要,可以在多个脚本上进行这种搜索和替换,成功!

于 2013-05-16T18:00:44.583 回答