[VBA] Déclarer plusieurs variables en boucle
Résolu
koobcam
Messages postés
6
Date d'inscription
Statut
Membre
Dernière intervention
-
koobcam Messages postés 6 Date d'inscription Statut Membre Dernière intervention -
koobcam Messages postés 6 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- [VBA] Déclarer plusieurs variables en boucle
- Incompatibilité de type vba ✓ - Forum Programmation
- Télé samsung s'éteint et se rallume en boucle - Forum Téléviseurs
- Xiaomi s'éteint tout seul et se rallume en boucle - Forum Xiaomi
- Excel compter cellule couleur sans vba - Guide
- Vba range avec variable ✓ - Forum VB / VBA
2 réponses
Bonjour,
C'est une variable tableau que tu as besoin, seulement si la taille est variable il faut la mettre avec un redim; :
dim col() as string, c as long
c = ActiveSheet.Range("A1").End(xlToRight).Column
redim col(c)
'ensuite tu utilises l'indice, en reprenant ton code en exemple :
For j = 1 To c
col(j) = Sheets("FeuilleDonnées").Cells(1, j).Value
Next
....PivotFields(col(3))
eric
C'est une variable tableau que tu as besoin, seulement si la taille est variable il faut la mettre avec un redim; :
dim col() as string, c as long
c = ActiveSheet.Range("A1").End(xlToRight).Column
redim col(c)
'ensuite tu utilises l'indice, en reprenant ton code en exemple :
For j = 1 To c
col(j) = Sheets("FeuilleDonnées").Cells(1, j).Value
Next
....PivotFields(col(3))
eric
Bonjour Eric,
Merci pour votre aide : ça marche du tonnerre !
Pouvez-vous s'il vous plaît me ré-expliquer pourquoi il faut déclarer l'élément 'col()' en String puis d'utiliser la fonction 'Redim' en y incluant le numéro d'index de ma dernière colonne utilisée dans le TCD ?
Est-ce que le fait de mettre deux parenthèses dans la déclaration de la variable 'col()' indique qu'elle va accueillir des valeurs d'index différents ?
Encore merci pour votre aide.
>> Ce sujet peut être classé comme résolu.
Merci pour votre aide : ça marche du tonnerre !
Pouvez-vous s'il vous plaît me ré-expliquer pourquoi il faut déclarer l'élément 'col()' en String puis d'utiliser la fonction 'Redim' en y incluant le numéro d'index de ma dernière colonne utilisée dans le TCD ?
Est-ce que le fait de mettre deux parenthèses dans la déclaration de la variable 'col()' indique qu'elle va accueillir des valeurs d'index différents ?
Encore merci pour votre aide.
>> Ce sujet peut être classé comme résolu.
Re,
dim col(7) déclare une variable tableau de 8 éléments (de 0 à 7), seulement tu ne peux pas remplacer le 7 par une variable calculée.
Il faut donc le déclarer sans dimension avec dim col() (les () sont là pour indiquer un tableau) et ensuite changer sa dimension avec redim col(c).
Et si ja mais tu diois redimensionner à nouveau et que tu veuilles garder ses valeurs tu mets redim preserve col(c)
C'est à toi de mettre en résolu en haut
eric
dim col(7) déclare une variable tableau de 8 éléments (de 0 à 7), seulement tu ne peux pas remplacer le 7 par une variable calculée.
Il faut donc le déclarer sans dimension avec dim col() (les () sont là pour indiquer un tableau) et ensuite changer sa dimension avec redim col(c).
Et si ja mais tu diois redimensionner à nouveau et que tu veuilles garder ses valeurs tu mets redim preserve col(c)
C'est à toi de mettre en résolu en haut
eric