是否與以下列方式的功能組合not
聲明的方式:我希望它像這個例子VBA的Excel:不聲明及公式
MsgBox not False
返回True
工作
。
但如果我增加一個功能,而不是布爾聲明
MsgBox not myFunction()
的則返回一個mismatch error
。
myFunction()
應該返回True
或False
有什麼建議?
是否與以下列方式的功能組合not
聲明的方式:我希望它像這個例子VBA的Excel:不聲明及公式
MsgBox not False
返回True
工作
。
但如果我增加一個功能,而不是布爾聲明
MsgBox not myFunction()
的則返回一個mismatch error
。
myFunction()
應該返回True
或False
有什麼建議?
你需要給我們更多的代碼,如下面的工作:
Public Sub test()
MsgBox Not myfunction()
End Sub
Function myfunction() As Boolean
myfunction = False
End Function
只需
MsgBox Not Application.Evaluate(myFunction)
你爲什麼要評估而不只是調用函數? –
因爲調用函數給出了一個錯配錯誤。評估工作作爲一種解決方案。 – karamell
什麼myFunction的定義?如果它不是:
Function myFunction(...) As Boolean
'...
End Function
這將是爲什麼,「而不是」運營商預留給布爾(真/假)
如果你的函數是這樣的,只有臨危1和0:
Function myFunction(...) As Integer
這個添加到呼叫:
MsgBox not CBool(myFunction(...))
,或者如果你實際上是試圖比較文本:
Function myFunction(...) As String
那麼你將需要:
編輯:沒有的String.Compare(STRCOMP(STR1,STR2,vbTextCompare)= 0)
希望幫助:)
'String.Compare'是VB.NET,而不是VBA。 –
你試過MsgBox Not(myFunction())'? – RBarryYoung