Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1296 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  tableau dynamique

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

tableau dynamique

n°384385
toutoun88
Posté le 06-05-2003 à 14:27:07  profilanswer
 

Bonjour a tous,  
Comment faire un tableau dynamique, de String.
Voila mon code, mais il ne l'accepte pas lors de la compilation, il me dit incompatibilité de type.
 
Dim tableau As Variant
 
tableau = ""

mood
Publicité
Posté le 06-05-2003 à 14:27:07  profilanswer
 

n°384388
toutoun88
Posté le 06-05-2003 à 14:28:03  profilanswer
 

Excuser moi, j'ai oublié l'indice
 
Dim ...
 
tableau(0) = ""  
:pt1cable:

n°384567
drasche
Posté le 06-05-2003 à 15:46:51  profilanswer
 

1) tu peux parfaitement faire un  

Code :
  1. Dim MonTableau() As Integer


 
et le redimensionner après comme tu veux: l'avantage étant que ses éléments sont typés suivant ton désir.
 
2) Sinon pour une variable typée Variant comme tu l'as montré, tu fais directement un:
 

Code :
  1. Redim Preserve MonTableau(Compte)


 
L'avantage d'un tableau comme tu l'as défini est qu'il peut recevoir le résultat d'un appel à l'instruction Split, contrairement à une variable déclarée à mon point 1)
 
Donc si tu n'utilises pas le Split, je te conseille la première déclaration.
 
Ensuite, la clause Preserve est facultative à la première initialisation du tableau, mais indispensable dans une boucle pour préserver les données faisant déjà partie du tableau.


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
n°384636
toutoun88
Posté le 06-05-2003 à 16:04:25  profilanswer
 

C'est quoi le split?
Sinon, j'ai utilisé la premiere solution et ça marche. Juste une derniere question, comment je peux connaitre la longueur du tableau. En fait je je veux faire un parcour sur les elements du tableau:
For i = 1 to len(tableau())
   ...
next
 
Et ça marche pas, il ne comprend pas len(tableau()). Comment faire?

n°384650
drasche
Posté le 06-05-2003 à 16:09:33  profilanswer
 

Split: instruction qui convertit une chaîne en tableau, sachant que la chaîne contient un caractère spécial permettant de couper la chaîne en éléments.  L'instruction qui fait le contraire est Join.  Je te renvoie à l'aide pour les détails ;)
 
Len ne fonctionne que pour les strings.  Pour les tableaux, on prend LBound et UBound.  Ta boucle ressemblerait donc ceci:
 

Code :
  1. For Index = LBound(tableau) To UBound(tableau)


 


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
n°384655
mareek
Et de 3 \o/
Posté le 06-05-2003 à 16:12:09  profilanswer
 

for i=lbound(montableau) to ubound(montableau)
...
next
 
lbound: borne inférieure du tableau
Ubound: borne supérieure du tableau
 
et jette un coup d'oeil à l'aide, c'est tout expliqué dedans.


---------------
"I wonder if the internal negative pressure in self pumping toothpaste tubes is adjusted for different market altitudes." John Carmack
n°384713
toutoun88
Posté le 06-05-2003 à 16:37:48  profilanswer
 

Merci les gars, mais ça ne marche pas tout a fais, ou est-ce que j'ai fais une erreur?
 
dim i as Integer
dim tableau() as String
 
for i = 1 to UBound(tableau)
 ...
next
 
il plante au niveau de Ubound en me disant:  
"L'indice n'appartient pas a la selection"

n°384717
mareek
Et de 3 \o/
Posté le 06-05-2003 à 16:39:12  profilanswer
 

c'est parce que tu n'a pas fait de redim sur ton tableau. la fonction Ubound renvoit une erreur quand on lui file un tableau dynamique non dimensionné en paramètre.


---------------
"I wonder if the internal negative pressure in self pumping toothpaste tubes is adjusted for different market altitudes." John Carmack
n°384745
toutoun88
Posté le 06-05-2003 à 16:48:55  profilanswer
 

Ok, et ça marche comment redim?

n°384768
mareek
Et de 3 \o/
Posté le 06-05-2003 à 16:55:44  profilanswer
 

toutoun88 a écrit :

Ok, et ça marche comment redim?


t'as pas l'aide dans ton VB ?
si c'est pas le cas, jett un oeil sur les [:msdn]
http://msdn.microsoft.com


---------------
"I wonder if the internal negative pressure in self pumping toothpaste tubes is adjusted for different market altitudes." John Carmack

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  tableau dynamique

 

Sujets relatifs
Tableau dynamique à deux entrées avec vectortableau à 2 dimension dynamique de CString
creation d'un tableau dynamiquePb tableau et contenu dynamique
Utilisation d'un tableau dynamique[C++] tableau de double de taille dynamique
TABLEAU DYNAMIQUE[C++] Nombre d'éléments d'un tableau dynamique ???
[JavaScript (Haut niveau, enfin je crois)] Tableau DynamiqueProblème avec tableau dynamique
Plus de sujets relatifs à : tableau dynamique


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR