Déclaration tableau bi-dimensionnel
lucaspzt
-
eriiic Messages postés 24603 Date d'inscription Statut Contributeur Dernière intervention -
eriiic Messages postés 24603 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je m'adresse à vous chers amis car j'ai un petit soucis :
Dans une macro longue et fastidieuse, je me vois dans l'obligation d'utiliser un tableau à 2 dimensions. Le fait est que lorsque l'on veut redimensionner un tableau à 2 dimensions, seule la dernière dimension peut être modifiée.
Concrètement, mon soucis se situe au niveau de la 1ere dimension, qui certes s'avère être constante lorsque je veux utiliser mon tableau mais c'est une constante que je détermine dans la 1ere partie de ma macro à l'aide d'une variable qui s'incrémente. Donc lorsque je cherche à redimensionner mon tableau, erreur! car meme si la variable représentant la taille de la première dimension n'est plus amenée à changer, toujours est il qu'elle n'est pas déclarée en tant que constante! En gros y a t'il un moyen de déclarer une constante à partir d'une variable qui ne varie plus?
code pour illustré :
dim tailledim1 as integer
... diverses opérations qui modifie tailledim1....
... tailledim1 ne varie plus par la suite
dim montab() as string
redim montab(tailledim1, x)
(avec x qui va varier, mais ce n'est pas un soucis car la 2eme dimension est modifiable à volonté!)
et la évidemment erreur! tailledim1 n'est pas une constante donc ca ne marche pas!
J'ai bien tenté de faire un :
const tailledim1bis = tailledim1 pour ensuite passer tailledim1bis en paramètre mais évidemment la déclaration d'une constante ne marche pas ainsi
quelqu'un aurait il une idée?
Je m'adresse à vous chers amis car j'ai un petit soucis :
Dans une macro longue et fastidieuse, je me vois dans l'obligation d'utiliser un tableau à 2 dimensions. Le fait est que lorsque l'on veut redimensionner un tableau à 2 dimensions, seule la dernière dimension peut être modifiée.
Concrètement, mon soucis se situe au niveau de la 1ere dimension, qui certes s'avère être constante lorsque je veux utiliser mon tableau mais c'est une constante que je détermine dans la 1ere partie de ma macro à l'aide d'une variable qui s'incrémente. Donc lorsque je cherche à redimensionner mon tableau, erreur! car meme si la variable représentant la taille de la première dimension n'est plus amenée à changer, toujours est il qu'elle n'est pas déclarée en tant que constante! En gros y a t'il un moyen de déclarer une constante à partir d'une variable qui ne varie plus?
code pour illustré :
dim tailledim1 as integer
... diverses opérations qui modifie tailledim1....
... tailledim1 ne varie plus par la suite
dim montab() as string
redim montab(tailledim1, x)
(avec x qui va varier, mais ce n'est pas un soucis car la 2eme dimension est modifiable à volonté!)
et la évidemment erreur! tailledim1 n'est pas une constante donc ca ne marche pas!
J'ai bien tenté de faire un :
const tailledim1bis = tailledim1 pour ensuite passer tailledim1bis en paramètre mais évidemment la déclaration d'une constante ne marche pas ainsi
quelqu'un aurait il une idée?
A voir également:
- Déclaration tableau bi-dimensionnel
- Déclaration - Guide
- En plus des revenus, il ne faut surtout pas oublier de faire cette déclaration en ligne aux impôts - Guide
- Tableau word - Guide
- Tableau ascii - Guide
- Trier un tableau excel - Guide
2 réponses
Bonjour,
et la évidemment erreur! tailledim1 n'est pas une constante donc ca ne marche pas! Non, pas question de constantes, les deux dimensions sont redimensionnables, ex:
et la évidemment erreur! tailledim1 n'est pas une constante donc ca ne marche pas! Non, pas question de constantes, les deux dimensions sont redimensionnables, ex:
Sub test()
Dim tabl() As String
For a = 1 To 10
x = x + 1
y = y + 1
Next a
ReDim tabl(x, y)
End Sub
Bonjour,
Le fait est que lorsque l'on veut redimensionner un tableau à 2 dimensions, seule la dernière dimension peut être modifiée.
Ca c'est si tu fais Redim Preserve montab(tailledim1, x)
eric
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu lorsque c'est le cas (en haut vers votre titre).
Merci
Le fait est que lorsque l'on veut redimensionner un tableau à 2 dimensions, seule la dernière dimension peut être modifiée.
Ca c'est si tu fais Redim Preserve montab(tailledim1, x)
eric
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu lorsque c'est le cas (en haut vers votre titre).
Merci