VBA alimenter et restituer un tableau à 2 dimensions
Bonjour a tous,
J'ai un souci d'alimentation de tableau a plusieurs dimensions.
Le principe est de parcourir la colonne A et de vérifier la présence d"une chaine, si oui alimente le tableau avec la valeur d'une autre cellule.
j'arrive à alimenter une dimension
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
Dim plage As Range, cell As Range
Dim wks As Worksheet
Set wks = Worksheets("Feuil1")
Set plage = Range("A1:A" & wks.UsedRange.Cells.Count)
Dim i As Integer
Dim Tableau() As Variant
i = 0
For Each cell In plage
If cell.Value = "TITRE" Then
'Définit la taille du tableau et le type de données.
ReDim Preserve Tableau(i)
Tableau(i) = cell.Offset(0, 3).Value 'Alimente les éléments du tableau
i = i + 1
End If
Next
Sheets("Feuil2").Select
Range("A1:A" & i).Value = Application.WorksheetFunction.Transpose(Tableau) 'transpose : mise en colonne les données d'une liste
Sheets("Feuil1").Select |
Par contre quand je veux ajouter une autre dimension ...
le but est d'avoir sur la feuille2, trois colonne avec les titres, les clés et les résumés
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
|
Dim plage As Range, cell As Range
Dim wks As Worksheet
Set wks = Worksheets("Feuil1")
Set plage = Range("A1:A" & wks.UsedRange.Cells.Count)
Dim i As Integer, j As Integer
Dim Tableau() As Variant
i = 0
j = 0
For Each cell In plage
If cell.Value = "TITRE" Then
j = 0
ReDim Preserve Tableau(i, j)
Tableau(i, j) = cell.Offset(0, 3).Value
i = i + 1
End If
If cell.Value = "KEY" Then
ReDim Preserve Tableau(i)
Tableau(i) = cell.Offset(0, 3).Value
j = j + 1
End If
If cell.Value = "RESUME" Then
'Définit la taille du tableau et le type de données.
ReDim Preserve Tableau(i)
Tableau(i, j) = cell.Offset(0, 3).Value 'Alimente les éléments du tableau
j = j + 1
End If
Next
Sheets("Feuil2").Select
Range("A1:C" & i).Value = Application.WorksheetFunction.Transpose(Tableau) 'transpose : mise en colonne les données d'une liste |
le fichier source qui alimente la colonne 1 est un fichier xml formater comme suit :
Citation:
...
TITRE mon titre
KEY ma clé
RESUME mon résumé
TITRE mon titre
KEY ma clé
RESUME mon résumé
...