2012-04-14 9 views
15

Korzystanie z VBA Access 2010, mam sub:wiele subs argumentów vba

Public Sub setInterest(account As String, dmonth As Integer) 
    ...somecode... 
End Sub 

I wzywam go

setInterest("myAccount",3) 

I pojawiają się błędy składniowe.
Modyfikowanie podpórki do przyjmowania tylko jednego argumentu i pomijanie 3 nie powoduje błędów, problem występuje tylko wtedy, gdy mam 2 argumenty.

+1

duplikat [Wywołanie Sub VBA] (http://stackoverflow.com/questions/7715044/calling-a-sub- in-vba) ... i wiele innych. Ten problem został już odebrany wiele razy. –

Odpowiedz

34

Podczas korzystania z wielu argumentów, można napisać:

setInterest "myAccount", 3 

Albo

Call setInterest("myAccount", 3) 

W obu przykładów można wymienić argumenty:

setInterest account:="myAccount", dmonth:= 3 
+3

Nie wiem, czy jest coś dziwniejszego w obliczu całej Ziemi! Przez dwie godziny zmagałem się z tym. O MÓJ :( –

0

dodam tę odpowiedź, for Dlaczego twoja składnia działa z jednym argumentem?

Public Sub setInterest(account As String) 
    '...somecode... 
End Sub 

setInterest ("myAccount") 

Uwaga:
Gdy nie ma żadnego , między ( i ), VBA uważa, że ​​to formuła i dokładnie jeden argument.

Gdy wzór obliczyć wynik, tak:

Dim str As String 
str = ("TEST") 
Debug.Print str 

[Output:] 
TEST