次のvba関数があります(Excelファイルのモジュール内)
Public Function validate_fncname(strFncname As String) As Boolean
.
.
.
validate_fncname = True
End Function
そして、私はそれを呼び出すために次のvbscriptを書きました:
Set objExcel = CreateObject("Excel.Application")
Set objWorkbook = objExcel.Workbooks.Open("C:\Users\uidu8611\Desktop\CAM0500040F10_SW_Quality_Assurance_Report_Template(new_version).xlsm")
objExcel.Application.Visible = True
Dim str
str ="hello"
Dim validate_fncname
validate_fncname = objExcel.Application.Run("'C:\Users\uidu8611\Desktop\CAM0500040F10_SW_Quality_Assurance_Report_Template(new_version).xlsm'!validate_fncname", str)
Wscript.Echo validate_fncname
ただし、スクリプトを実行すると、次の行のタイプの不一致エラーが発生します。
objExcel.Application.Run("'C:\Users\uidu8611\Desktop\CAM0500040F10_SW_Quality_Assurance_Report_Template(new_version).xlsm'!validate_fncname", str)
型は正しいのに(文字列)
さらに、次のように変更すると:
objExcel.Application.Run("'C:\Users\uidu8611\Desktop\CAM0500040F10_SW_Quality_Assurance_Report_Template(new_version).xlsm'!validate_fncname(5)")
5 は整数ですが、エラーにはなりません!
私の間違いはどこですか?