0
在excel-vba中,如何將參數傳遞給期望相同參數的函數?我一直在四處尋找,但似乎無法找到這個特定問題將參數傳遞到需要參數的函數中
我的代碼看起來像這樣的任何答案:
Sub test()
GetRefData "SPX Index", "PX_LAST", "PX_VOLUME", "PE_RATIO", "PX_TO_CASH_FLOW"
End Sub
Public Function GetRefData(security As String, ParamArray fields() As Variant) As String
Debug.Print fields(0) // returns "PX_LAST"
SendReq security, fields
End Function
Sub SendReq(security, ParamArray fields() As Variant)
Debug.Print fields(0) // returns type mismatch
End Sub
我不確定你的問題是什麼。如果我刪除了在Sub測試中調用GetRefData的括號,那麼我可以在SendReq中放置一個斷點,並且fields參數有4個項目和期望的字符串值。 – DeanOC
嗨,DeanOC,謝謝你的回覆。您是否在運行代碼時說這些代碼有效?例如,如果我在SendReq中使用'Debug.Print字段(0)',則VBA返回'類型不匹配'錯誤 –
請參閱「將ParamArray變量傳遞給其他過程」:http://www.tushar- mehta.com/publish_train/xl_vba_cases/1005%20ParamArray.shtml –