Afectation d'une plage a un tableau VBA
Résolu
ccm81
Messages postés
11033
Statut
Membre
-
pijaku Messages postés 13513 Statut Modérateur -
pijaku Messages postés 13513 Statut Modérateur -
Bonjour,
2 questions en VBA
1. Comment affecter une plage à un tableau vba
quelque chose du genre Tablo = L1C1:L20C20
et comment declarer ce tabeau (qui doit etre de dimension variable)
2. Comment recuperer le n° de la 1° colonne non vide d'une ligne (d'une feuille)
merci
2 questions en VBA
1. Comment affecter une plage à un tableau vba
quelque chose du genre Tablo = L1C1:L20C20
et comment declarer ce tabeau (qui doit etre de dimension variable)
2. Comment recuperer le n° de la 1° colonne non vide d'une ligne (d'une feuille)
merci
A voir également:
- Afficher un tableau vba dans une feuille
- Tableau word - Guide
- Trier un tableau excel - Guide
- Tableau ascii - Guide
- Comment imprimer un tableau excel sur une seule page - Guide
- Les données fournies dans le fichier à télécharger peuvent être synthétisées par le tableau récapitulatif ci-dessous. dans le fichier, générez ce tableau automatiquement (tableau croisé dynamique ou table de pilote) à partir des quatre premières colonnes. il manque 5 valeurs dans le tableau ci-dessous. retrouvez-les dans votre tableau, puis reportez-les arrondies à l’entier le plus proche. ✓ - Forum Excel
3 réponses
Salut ccm81,
Question 1 : Je ne suis, loin de là même , pas spécialiste en variable tableau... Je débute là dedans. Je te conseille fortement ce lien :
tout sur les variables tableau ici
Tu peux toujours faire comme ceci :
Question 2 :sources
"Laissez-moi deviner... Votre surnom, c'est «Bande Passante»? "
- Le Tribunal des flagrants délires- P.Desproges -
Question 1 : Je ne suis, loin de là même , pas spécialiste en variable tableau... Je débute là dedans. Je te conseille fortement ce lien :
tout sur les variables tableau ici
Tu peux toujours faire comme ceci :
Dim Tablo
Tablo = Sheets(1).Range("A1:AZ20").Value
Question 2 :sources
'donne la lettre de la dernière colonne renseignée de la feuille de calculs
Dercol = Split(Worksheets("Feuil2").UsedRange.Address, "$")(3)
'Donne le numéro de la dernière Colonne de la feuille de calculs
Dercol = Range(Split(Worksheets("Feuil2").UsedRange.Address, "$")(3) & 1).column--
"Laissez-moi deviner... Votre surnom, c'est «Bande Passante»? "
- Le Tribunal des flagrants délires- P.Desproges -
merci
Normal, déjà la plage est constituée de plusieurs lignes ET de plusieurs colonnes.
Sinon, il est vrai que :
Tablo = Sheets(1).Range("A1:A20").Valuedonne également un tableau à 2 dimensions en Base 1 (le premier indice du tableau est égal à 1, pas à 0).
Donc, pour obtenir un tableau à une dimension, il faut boucler sur celui-ci et le transférer dans un tableau à 1 dimension.
Exemple :
Dim Tablo, i AS Long, Tb_Out() Tablo = Sheets(1).Range("A1:A20").Value 'redimensionne en base 0. Pour Base 1, enlever le - 1 ReDim Tb_Out(UBound(Tablo, 1) - 1) For i = LBound(Tablo, 1) To Ubound(Tablo, 1) 'en Base 0. Pour la Base 1 enlever le - 1 Tb_Out(i - 1) = Tablo(i, 1) Next i