Déclarer un tableau comme paramètre dans une procédure

[Résolu]
Signaler
Messages postés
99
Date d'inscription
jeudi 13 juillet 2006
Statut
Membre
Dernière intervention
16 avril 2009
-
Messages postés
99
Date d'inscription
jeudi 13 juillet 2006
Statut
Membre
Dernière intervention
16 avril 2009
-
bonjour à tous,
j'utilise un tableau de type
type personne
   pers1 as string
   pers2 as string
   ...
end type
dim moi as personne

je voudrai passer un tableau de ce type en parmetre d'une procédure
Public sub( ByRef Type personne, ByRef  moi as personne)

Or, j'ai une erreur.
quelqu'un pourrait-il m'aider
merci d'avance

6 réponses

Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Comme ceci, peut-être ?

Dim moi(1, 1)


Private Sub Command1_Click()
   moi(0, 0) = "Dupont"
   moi(0, 1) = "toto"
   coucou moi()
End Sub




Private Sub coucou(lui())
  MsgBox lui(0, 0) & "  " & lui(0, 1)
End Sub
Messages postés
99
Date d'inscription
jeudi 13 juillet 2006
Statut
Membre
Dernière intervention
16 avril 2009

re-bonjour,
j'ai une modification à apporter au code.
Le but est toujours de déclarer un tableau en paramètre dans une procédure. 
Public Sub ajout(ByVal t_coef(0 To 2, 0 To 9) As Integer)

Lorsque que j'écris cela, il me met une erreu : Erreur de compilation
                                                                             Attendu : )

merci d'avance
Messages postés
84
Date d'inscription
lundi 6 novembre 2000
Statut
Membre
Dernière intervention
25 juillet 2008
1
pas sur de tout comprendre, mais si la question est de passer des tableaux à une procédure :

Function createTab(SourceD As Range, TableN As String, rowfields(), fields(), pivotfield As String) As Excel.Worksheet

ici, rowfields et fields sont des tableaux.
on profite du typage "lache" de vb pour pas se prendre le chou !
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Attends, là !
Tu bascules trop vite d'un sujet à l'autre !


 


On répond à la 1ère question :


 


Dans un module ( nécessaire)


Public Type personne
   pers1 As String
   pers2 As String
End Type

et dans le code de ta Form :

Private Sub Command1_Click()
   Dim moi As personne
   moi.pers1 = "Dupont"
   moi.pers2 = "toto"
   coucou moi
End Sub


Private Sub coucou(lui As personne)
  MsgBox lui.pers1
End Sub
Messages postés
99
Date d'inscription
jeudi 13 juillet 2006
Statut
Membre
Dernière intervention
16 avril 2009

merci beaucoup jmfmarques.
ça marche impeccable!!!

J'aurais voulu savoir comment passer en paramètre d'une procédure un tableau a deux dimensions

merci d'avance
Messages postés
99
Date d'inscription
jeudi 13 juillet 2006
Statut
Membre
Dernière intervention
16 avril 2009

merci jmfmarques, j'ai suivi ton code est ça marche.