Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

VBA ArrayDictionary ajouter ligne

Hoareau

XLDnaute Occasionnel
Bonjour

J'ai un tableau que je voudrais dynamique alimenté par ligne par le dictionary, mais je ne réussi pas à insérer les lignes suivantes dans le tableau dynamique.

Pour résumer toutes les lignes de 6 à 10 doivent être inserer progressivement dans le tableau.
la premierre ligne passe, a la deuxième message erreur

merci




Sub Redim_Transpose_Array()


'Dim My_Array_Dynamic() As Variant

Dim lig As Integer, Col As Integer, i As Integer


For lig = 6 To 10
For Col = 5 To 9

i = i + 1

ReDim My_Array_Dynamic(1 To i, 1 To 5)


Set Mondico = CreateObject("Scripting.Dictionary")

For Each c In Sheets("feuil2").Range("E" & 6 & ":" & "i" & lig)

If Not Mondico.exists(c.Value) Then Mondico.Add c.Value, c.Value

My_Array_Dynamic = Mondico.items

Next



My_Array_Dynamic = Application.Transpose(My_Array_Dynamic)

ReDim Preserve My_Array_Dynamic(1 To 5, 1 To i)


My_Array_Dynamic = Application.Transpose(My_Array_Dynamic)

Sheets("feuil2").Cells(lig, 20).Resize(i, 5) = My_Array_Dynamic

next
next
 

Dranreb

XLDnaute Barbatruc
Re : VBA ArrayDictionary ajouter ligne

Bonjour.
Seule la dernière dimension peut être augmentée par un Redim. Ça m'a d'ailleurs toujours étonné, ça signifie que les données d'une même colonne, et non d'une même ligne, sont rangées à des emplacements contigus en mémoire.
À +
 

Discussions similaires

Réponses
4
Affichages
332
Réponses
11
Affichages
538
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…