1
我有一個可怕的問題。我建立了許多屬性的怪異類,其中也有數組屬性。callbyname與數組元素一起作爲procname
,如果我想引用這些與CALLBYNAME,它不會工作,讓我們來看一個例子:
public sub whatsoever()
Dim alfaarray() As Variant
Dim g As Integer
Dim obj As Object
ReDim alfaarray(4)
Set obj = New teszt
For g = 0 To 4
alfaarray(g) = "g" & CStr(g)
Next g
Call obj.init
CallByName obj, "GARG", VbLet, alfaarray
end sub
類:teszt
Dim pgarg() As String
Property Let GARG(index As Long, value As String)
pgarg(index) = value
End Property
Property Get GARG(index As Long) As String
GARG = pgarg(index)
End Property
Public Sub init()
ReDim pgarg(4)
End Sub
尊敬的MATS,非常感謝,我沒有清楚:我想添加一個數組到一個數組屬性,它仍然是空的,爲此Id喜歡使用callbyname。所以我只需要vblet,我不會運行任何子:)無論如何,我到處搜索它,到目前爲止沒有解決方案,也許根本沒有解決方案。再次我們是在vba的限制:( – viktorajosagos
對不起,我誤解了這個問題;刪除了我以前的評論。這是新的:如果你想要做的不符合內置的'CallByName'你需要編寫一個適用於這些限制的工具,你可以循環訪問數組,並明確地爲每個條目調用你的屬性。 – Leviathan
你必須使用typelib,如http://www.vbforums.com/showthread。 php?405366-RESOLVED-Using-CallByName -with-variable-number-of-arguments – Jules