VBAには単純な関数があり、それが正常に実行されたかどうかを確認する必要があります。私はVBAをあまり知らないので、それが可能かどうかわかりません。私はこのようなことをしたいです:bool X=MyFunction()
。
[〜#〜] qtp [〜#〜] 記述プログラミングでVBAを使用しています。これは動作しません:
Function A as Boolean
A=true
End Function
それは言う:Expected statement
しかし、メソッドなどで戻り値の型を確認できません。
function MyFunction() as Boolean
.....
.....
MyFunction = True 'worked
end function
dim a as boolean = MyFunction()
VBAでは、関数と同じ名前の変数に割り当てることにより、関数の戻り値を設定します。
Function MyFunc() as Boolean
MyFunc = True
End Function
VBAの代わりにVBScriptを使用しているのではないでしょうか。その場合、VBScriptはTypeを示しません
これはVBScriptで機能します
dim test,b
test = 1
b=false
msgbox ("Calling proc before function test=" & test)
msgbox("Calling proc before function b=" & b)
b = A(test)
msgbox ("Calling proc after function test=" & test)
msgbox("Calling proc after function b=" & b)
Function A(test)
test = test +1
A=true
End Function
またはあなたの例では
Function A()
A=true
End Function
関数がVBAで機能したかどうかを確認する実際の方法はありません。関数が成功したかどうかを自分で判断する必要があります。例えば:
Function AFunction() as Boolean
on error goto 1
MyFunc = True
AFunction = True
Exit Function
1
AFunction = False
End Function
上記は、関数が失敗したかどうかを通知します。失敗した場合はラベル「1」に移動してからfalseを返し、それ以外の場合はtrueを返します。
探している「エラー」でない場合は、返されたデータまたは提供されたデータが適切かどうかを判断する必要があります。これを行う1つの方法は、失敗を表す特定の値[エラーコード]を返すことです。
関数宣言にアクセスできる場合は、ブールの戻り値の型を設定して、実行に応じてtrueまたはfalseを返すことができます。関数がブール値を返すと、コードは機能します。