Bonjour,
J'ai utilisé une macro dictionnaire m’évitant quelconque doublons, et je la transfère dans un tableau, jusque là tout va bien.
voici la macro:
Ma fenêtre développeur m'affiche bien
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 Sub creation_tabcart() Dim tabcart() Dim z As Variant Set MonDico = CreateObject("Scripting.Dictionary") Sheets("BDD_produit").Activate For Each z In ActiveSheet.Range([A2], [A65536].End(xlUp)) 'si la donnée n'existe pas encore dans le dictionnaire If Not MonDico.Exists(z.Value) Then If z.Value Like "CART*" Then 'on l'ajoute dans le dictionnaire MonDico.Add z.Value, z.Value 'et dans le tableau VBA ReDim Preserve tabcart(1 To MonDico.Count) tabcart(MonDico.Count) = z.Value Debug.Print tabcart(MonDico.Count) End If End If Next z Sheets("liste des palettes").Activate Sheets("liste des palettes").Range(Cells(2, 10), Cells(UBound(tabcart) + 2, 10)) = tabcart
donc ce que je rechercheCART037
CART038
CART073
CART133
CART134
...
Le problème arrive ici,en effet, le tableau ainsi copier sur la feuille excel ne comporte que la première valeur du tableau dans chaque cellule (soit un tableau d'une colonne et x lignes toutes remplies par "CART037").
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Sheets("liste des palettes").Activate Sheets("liste des palettes").Range(Cells(2, 10), Cells(UBound(tabcart) + 2, 10)) = tabcart
Cela fait 1 journée que je suis dessus et je n'arrive pas à comprendre d'où viens le problème.
Merci d'avance pour votre aide,
Up : La réponse est ici :
https://www.developpez.net/forums/d8...euille-calcul/
il suffisait de faire :
J'ai néanmoins un nouveau problème, l'apparition d'un erreur 5, sur le Cells(UBound(tabcart)=<l'indice n'appartient pas à la selection>
Code : Sélectionner tout - Visualiser dans une fenêtre à part Sheets("liste des palettes").Range(Cells(2, 10), Cells(UBound(tabcart) + 1, 10)).Value = Application.Transpose(tabcart)
Je ne comprend pas...
Partager