Variables à deux ou trois indices ?
Le
Kerry

Bonjour,
Est-il possible de créer en VBA des variables à deux ou trois indices ?=
Si oui, comment les déclarer ?
Je vous remercie de votre réponse !
Cordialement,
Kerry.
Est-il possible de créer en VBA des variables à deux ou trois indices ?=
Si oui, comment les déclarer ?
Je vous remercie de votre réponse !
Cordialement,
Kerry.
Par exemple, une variable à 3 dimensions :
Dim Tabl(10, 2, 2)
Tabl(0, 0, 0) = 1
Tabl(0, 0, 1) = "A"
Tabl(0, 0, 2) = 9
Tabl(0, 1, 0) = 5
Tabl(1, 0, 0) = 2
Cordialement.
Daniel
Quelques exemples. À mettre dans un module standard...
Exemple I
'Dans le haut du module standard, tu déclares un type personnalisé d'une variable
'-----------------------------------
Type MaVar
Toto As String
Titi As String
Tata As String
End Type
'-----------------------------------
'Comment utiliser ce type de variable dans une procédure
'-----------------------------------
Sub test()
Dim X As MaVar
X.Tata = "Bonjour"
X.Titi = "Bonsoir"
X.Toto = "Bye"
End Sub
'-----------------------------------
Exemple II
'On peut utiliser un ARRAY (TABLEAU)
'Excel travaille très bien avec des tableaux à une dimension ou à 2 dimensions
'-----------------------------------
Sub Test1()
'Déclarer une variable de type "Array" (tableau) , seulement une dimension
Dim X(1 To 3)
'Le tableau à une possible maximale de 3 valeurs
X(1) = "Bonjour"
X(2) = "Bonsoir"
X(3) = "Bye"
End Sub
'-----------------------------------
Exemple III
On peut mixer les 2 exemples précédents
'Dans le haut du module standard, tu déclares un type personnalisé d'une variable
'-----------------------------------
Type MaVar
Toto As String
Titi As String
Tata As String
End Type
'-----------------------------------
Et dans la procédure :
'-----------------------------------
Sub test()
Dim X(1 To 3) As MaVar
X(1).Tata = "Bonjour"
X(1).Titi = "Bonsoir"
X(1).Toto = "Bye"
X(2).Tata = "Auto"
X(2).Titi = "Autobus"
X(2).Toto = "Avion"
X(3).Tata = "Téléphone"
X(3).Titi = "Télex"
X(3).Toto = "Cellulaire"
End Sub
'-----------------------------------
MichD
---------------------------------------------------------------