如果我有一個Excel的功能,如:Application.Run和範圍參數?
=my_function(A1:C4)
,我想從VBA喜歡稱之爲:
Dim t as variant
t = Application.Run("my_function",X)
什麼是X代表A1最簡單的方法:C4?
如果我有一個Excel的功能,如:Application.Run和範圍參數?
=my_function(A1:C4)
,我想從VBA喜歡稱之爲:
Dim t as variant
t = Application.Run("my_function",X)
什麼是X代表A1最簡單的方法:C4?
你的範圍必須來自一個工作表,因此,如果您定義範圍,然後再它傳遞給函數在其他工作簿(我想這就是你想要做的,因爲你不會再使用Application.Run)。所以,下面的代碼將這樣的伎倆:
Sub RunFunctionInAnotherWorkbook()
Dim rThisRange as Range
Dim vResult as Variant
Set rThisRange = ActiveSheet.Range("A1:C4")
vResult = Application.Run("'MyOtherWorkbook.xls'!TheModuleName.TheSubName", rThisRange)
End Sub
而且在工作簿 「MyOtherWorkbook.xls」 功能:
Function TheSubName(inputRange as Range) as Variant
'Work your magic here
End Function
我還沒有嘗試,但不會
t=myfunction(range)
最簡單的語法是
Application.Run("my_function", [A1:c4])
你試過:' Application.Run(「'my_function」「A1:C4」「'」)'? – assylias