sir_patrick
Messages postés13Date d'inscriptionjeudi 25 janvier 2007StatutMembreDernière intervention31 mai 2011
-
31 mai 2011 à 13:49
cs_Jack
Messages postés14007Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 2015
-
31 mai 2011 à 20:19
Bonjour,
j'ai un programme qui utilise des tableaux à deux dimensions. Par exemple
Dim Tab1(30,3)
Dim Tab2(30,3)
ce pendant, je ne peux pas redimensionner la taille car le redimensionnement n'affecte que la derniere colonne. j'aimerai savoir si est possible de ce servir des ArrayList à la place des tableaux si oui comment faire dans le cas d'un tableau à deux dimensions
Cordialement
cs_Jack
Messages postés14007Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201578 31 mai 2011 à 14:19
Salut
Il me semble (pas féru en VB.Net) que ArrayList est une variable de type constante pour lequel il faudra que tu écrives les données au moment de la création.
Si tu dois utiliser un tableau que tu souhaites redimensionner, il ne faut pas déclarer de dimension lors du Dim.
Dim Tab1() As
... et le type; important, ça.
Puis, pour le redemensionner :
ReDim [Preserve] Tab1(0 To 100, 0 To 25)
Le Preserve (optionnel) permet de conserver les données déjà incluses.
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
cs_jopop
Messages postés1540Date d'inscriptionlundi 26 mai 2003StatutMembreDernière intervention 1 août 201312 31 mai 2011 à 14:21
Salut,
un ArrayList est un tableau générique managé, tu peux y mettre ce que tu veux dedans. Du coup tu peux très bien y ajouter des tableaux 1D. Tu peux également y ajouter des ArrayList, ou des structures de mapping.
sir_patrick
Messages postés13Date d'inscriptionjeudi 25 janvier 2007StatutMembreDernière intervention31 mai 2011 31 mai 2011 à 15:05
les données seront de type string. mais je sais pas en avance la taille du tableau que je dois prévoir.
Qd je tape Dim Tab1() As String, il me génère une erreur de type constate entière attendue alors que ma déclaration du tableau est bien a l’intérieur d'une procédure
merci
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_Jack
Messages postés14007Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201578 31 mai 2011 à 20:19
Erreur bizarre
Rectification de ce que je t'ai dit : Il faut prévoir le nombre de dimensions, car un ReDim ne peut pas changer ce nombre.
Si ton tableau doit avoir 2 dimensions, il faut faire le Dim initial comme ceci :
Dim sTest(,) As String ' Tu as noté la virgule entre les parenthèses
et il n'y a pas d'erreur en utilisant le ReDim tel que je te l'ai présenté.
Oui, l'utilisation d'une structure ou d'une collection serait peut-être plus pratique.