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

Variables à deux ou trois indices ?

2 réponses
Avatar
Kerry
Bonjour,
Est-il possible de cr=E9er en VBA des variables =E0 deux ou trois indices ?=
=20
Si oui, comment les d=E9clarer ?
Je vous remercie de votre r=E9ponse !
Cordialement,

Kerry.

2 réponses

Avatar
DanielCo
Bonjour,
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


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.
Avatar
MichD
Bonjour,

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
---------------------------------------------------------------