Bonjour à tous!!!
Ça y'est j'ai réussi à connecter Excel avec ma base de données!! Je passe par MS QUERY et ODBC.
Après avoir bien fait joujou pendant plusieurs jours, je rencontre un petit soucis.
Je m'explique.
Une fois que j'ai mis en place mes requêtes, les infos dont j'ai besoin et que j'ai passé tout ça sur excel, je m’aperçois que j'ai des lignes qui se répètent.
Exemple : En colonne A j'ai les id_user (info qui se répètent), en colonne B j'ai les numéros de téléphone (fixe + mobile = ici j'ai donc déjà minimum 2 lignes par id_user) et en colonne D (oui en colonne C j'ai une autre info qui n'a pas besoin d'être ajustée) j'ai les commentaires (sachant qu'à chaque nouveau commentaire, j'ai une nouvelle ligne qui apparaît).
Ce que j'aimerai faire, c'est ne plus avoir de doublon en colonne A, mais que toutes les infos de la colonne B (c'est à dire les 2 numéros de tel) soient dans une même cellule et la même chose pour la colonne C en fonction de l'id_user (colonne A).
Est-ce que c'est possible de gérer cela directement dans MS QUERY via une formule ou une manip?
Si ce n'est pas possible, j'ai une macro qui est capable de gérer cela, le seul HIC c'est que ça le fait que pour deux colonnes, or dans mon cas présent j'en ai 3.
Voici la macro:
Sub toto()
Dim l&, s$, v$(), Nof As New Scripting.Dictionary
With Worksheets("BASE").[A1]
Do
l = l + 1
If IsEmpty(.Offset(l).Value) Then Exit Do
s = Nof(.Offset(l).Text)
If s <> Empty Then s = s & vbLf & String(12, ChrW(8213)) & vbLf
Nof(.Offset(l).Text) = s & .Offset(l, 1).Text
Loop
ReDim v(1 To Nof.Count + 1, 1)
v(1, 0) = .Value: v(1, 1) = .Offset(0, 1).Value
For l = 2 To UBound(v)
v(l, 0) = Nof.Keys(l - 2): v(l, 1) = Nof.Items(l - 2)
Next
End With
With Worksheets("RECAP").[A1]
Intersect(.CurrentRegion, Columns(.Column).Resize(, 2)).ClearContents
.Resize(UBound(v), 2).Value = v
End With
End Sub
Les différences, c'est que je ne veux pas que cela se fasse sur une autre feuille ("RECAP" dans la macro ci-dessus), mais directement sur ma feuille où j'ai importé toutes mes infos, et la seconde différence c'est que j'aimerai que cela puisse être applicable à plusieurs colonnes et non seulement deux.
A savoir, l'info qui se répète se trouvera quoi qu'il arrive en colonne A.
Malgré m'être relu maintes fois, je ne sais pas du tout si je suis assez clair, alors n'hésitez pas à me poser la moindre question.
Sinon, comme d'habitude, merci à tous ceux qui auront pris le temps de me lire et surtout à ceux qui pourront m'aider par la suite!!
A très vite j'espère!