Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

passage de paramètre dans une fonction...

3 réponses
Avatar
Alex
Bonjour

j'aimerai savoir comment on peut passer en paramètre une variable si elle a
le même nom que la variable à laquelle on veut l'attribuer, voici comment je
ferais en Java:

Public setDS2FileID(DS2FileID As Integer) {
int DS2FileID
DS2FileID = this.DS2FileID
}

Mais en VBA:

Public Sub setDS2FileID(DS2FileID As Integer)
dim DS2FileID as Integer
DS2FileID = this.DS2FileID ?????? 'ca marche pas :-(
End Sub


Par avance merci

alex

3 réponses

Avatar
Gilles MOUGNOZ
Bonjour
j'aimerai savoir comment on peut passer en paramètre une variable si elle
a
le même nom que la variable à laquelle on veut l'attribuer, voici comment
je
ferais en Java:
Public setDS2FileID(DS2FileID As Integer) {
int DS2FileID
DS2FileID = this.DS2FileID
}
Mais en VBA:
Public Sub setDS2FileID(DS2FileID As Integer)
dim DS2FileID as Integer
DS2FileID = this.DS2FileID ?????? 'ca marche pas :-(
End Sub
Par avance merci
alex


Bonjour, Alex

VBA refuse ce genre de chose. Ceci dit, si tu souhaites modifier ton
paramètre dans le corps de la procédure, il faut ajouter le mot clé ByRef
lors de la déclaration.

Public Sub setDS2FileID(ByRef DS2FileID As Integer)
DS2FileID = 5
End Sub

Après exécution de cette procédure, la variable (de type Integer) passée en
paramètre aura pris la valeur 5.

Bonne continuation

Avatar
L. Poussier
Bonjour,

Le problème vient aussi de la double déclaration de la variable

dans la ligne
Public Sub setDS2FileID(DS2FileID As Integer)

la variable "DS2FileID " est déclarée comme paramètre de la procédure
"setDS2FileID"

la ligne "dim DS2FileID as Integer" est donc de trop

Cordialement

Lionel.


Bonjour
j'aimerai savoir comment on peut passer en paramètre une variable si elle
a
le même nom que la variable à laquelle on veut l'attribuer, voici comment
je
ferais en Java:
Public setDS2FileID(DS2FileID As Integer) {
int DS2FileID
DS2FileID = this.DS2FileID
}
Mais en VBA:
Public Sub setDS2FileID(DS2FileID As Integer)
dim DS2FileID as Integer
DS2FileID = this.DS2FileID ?????? 'ca marche pas :-(
End Sub
Par avance merci
alex


Bonjour, Alex

VBA refuse ce genre de chose. Ceci dit, si tu souhaites modifier ton
paramètre dans le corps de la procédure, il faut ajouter le mot clé ByRef
lors de la déclaration.

Public Sub setDS2FileID(ByRef DS2FileID As Integer)
DS2FileID = 5
End Sub

Après exécution de cette procédure, la variable (de type Integer) passée en
paramètre aura pris la valeur 5.

Bonne continuation






Avatar
Gilles MOUGNOZ
Bonjour,
Le problème vient aussi de la double déclaration de la variable
dans la ligne
Public Sub setDS2FileID(DS2FileID As Integer)
la variable "DS2FileID " est déclarée comme paramètre de la procédure
"setDS2FileID"
la ligne "dim DS2FileID as Integer" est donc de trop
Cordialement
Lionel.


Bonjour, Lionel

Désolé, je me suis mal exprimé, c'est bien ce que je voulais dire par "VBA
refuse ce genre de chose".
Mais si ton problème est résolu, c'est l'essentiel.

Bonne continuation