j'ai écrit un module de classe "Cylindre" en guise d'exemple d'apprentissage
avec 2 propriétés hauteur et rayon et une méthode qui calcule le volume
H*r²*pi.
Je 'instancie comme suit
dim MonCyl = new Cylindre
MonCyl.h= 2
MonCyl.r =3
debug.print MonCyl.volume
ça fonctionne
Mais est-il possible de l'instancier en passant les arguments hauteur et
rayon en même temps comme suit ?
set MonCyl (2,3) = new Cylindre
comment ( en ajustant la méthode cylindre_initialize ?)
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Croquignol
Bonjour,
Malheureusement c'est impossible, les modules de classe VBA ne le permettent pas.
Tu peux toujours passer en revanche par une fonction de ce genre :
Function NewCylindre(H As Double, W As Double) As Cylindre Set NewCylindre = New Cylindre NewCylindre.H = H NewCylindre.W = W End Function
Sub Test() Dim MyCylindre As Cylindre Set MyCylindre = NewCylindre(2, 3) End Sub
Amicalement,
Croquignol
Bonjour,
j'ai écrit un module de classe "Cylindre" en guise d'exemple d'apprentissage avec 2 propriétés hauteur et rayon et une méthode qui calcule le volume H*r²*pi.
Je 'instancie comme suit dim MonCyl = new Cylindre MonCyl.h= 2 MonCyl.r =3 debug.print MonCyl.volume
ça fonctionne
Mais est-il possible de l'instancier en passant les arguments hauteur et rayon en même temps comme suit ? set MonCyl (2,3) = new Cylindre
comment ( en ajustant la méthode cylindre_initialize ?)
merci de votre aide
Olivier
Bonjour,
Malheureusement c'est impossible, les modules de classe VBA ne le permettent
pas.
Tu peux toujours passer en revanche par une fonction de ce genre :
Function NewCylindre(H As Double, W As Double) As Cylindre
Set NewCylindre = New Cylindre
NewCylindre.H = H
NewCylindre.W = W
End Function
Sub Test()
Dim MyCylindre As Cylindre
Set MyCylindre = NewCylindre(2, 3)
End Sub
Amicalement,
Croquignol
Bonjour,
j'ai écrit un module de classe "Cylindre" en guise d'exemple d'apprentissage
avec 2 propriétés hauteur et rayon et une méthode qui calcule le volume
H*r²*pi.
Je 'instancie comme suit
dim MonCyl = new Cylindre
MonCyl.h= 2
MonCyl.r =3
debug.print MonCyl.volume
ça fonctionne
Mais est-il possible de l'instancier en passant les arguments hauteur et
rayon en même temps comme suit ?
set MonCyl (2,3) = new Cylindre
comment ( en ajustant la méthode cylindre_initialize ?)
Malheureusement c'est impossible, les modules de classe VBA ne le permettent pas.
Tu peux toujours passer en revanche par une fonction de ce genre :
Function NewCylindre(H As Double, W As Double) As Cylindre Set NewCylindre = New Cylindre NewCylindre.H = H NewCylindre.W = W End Function
Sub Test() Dim MyCylindre As Cylindre Set MyCylindre = NewCylindre(2, 3) End Sub
Amicalement,
Croquignol
Bonjour,
j'ai écrit un module de classe "Cylindre" en guise d'exemple d'apprentissage avec 2 propriétés hauteur et rayon et une méthode qui calcule le volume H*r²*pi.
Je 'instancie comme suit dim MonCyl = new Cylindre MonCyl.h= 2 MonCyl.r =3 debug.print MonCyl.volume
ça fonctionne
Mais est-il possible de l'instancier en passant les arguments hauteur et rayon en même temps comme suit ? set MonCyl (2,3) = new Cylindre
comment ( en ajustant la méthode cylindre_initialize ?)