user1302398
user1302398

Reputation: 253

multiple argument subs vba

Using VBA with Access 2010, I have a sub:

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

And I am calling it with

setInterest("myAccount",3)

And I get syntax errors.
Modifying the sub to only take one argument and leaving out the 3 gives no errors, the problem is only when I have 2 arguments.

Upvotes: 24

Views: 91788

Answers (2)

shA.t
shA.t

Reputation: 16978

I add this answer, for Why your syntax works with one argument ?

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

setInterest ("myAccount")

Note :
When there is not any , between ( and ), VBA thinks it's a formula and exactly one argument.

When formula calculate the result will be like this:

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

[Output:]
TEST

Upvotes: 2

assylias
assylias

Reputation: 328923

When using multiple arguments, you can either write:

 setInterest "myAccount", 3

Or

 Call setInterest("myAccount", 3)

In both examples you can name the arguments:

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

Upvotes: 59

Related Questions