Bonjour Fanfan,
Merci pour ton retour ! J'ai bien réussi à l'ouvrir pour ma part.
Je pensais plus à une macro qui ne garde que les lignes qui contiennent "Champion" dans la colonne A, et "Unique" ou "Unique2" dans la colonne B, pour ensuite les mettre toute sur la même ligne. Ta macro fonctionne bien sur mon fichier test mais pas sur mon fichier source.
Sub lignesquinontpasuniqueunique2etagent()
If (Range("A" & i)) <> "Champion" Or (Range("B" & i)) <> "Champion" Or (Range("B" & i)) <> "Champion" Then Rows(i).Delete
End Sub
Je devrais à ce moment là avoir uniquement les lignes qui contiennent "Champion" dans la Colonne A, et celles qui contiennent "Unique" ou "Unique2" dans la colonne B.
J'aurais donc cette macro pour enlever les colonnes vides C / D / F / H / J / L /N / P :
Sub suppcolonnevides()
Dim MyRange As Range
Dim iCounter As Long
Set MyRange = ActiveSheet.UsedRange
For iCounter = MyRange.Columns.Count To 1 Step -1
If Application.CountA(Columns(iCounter).EntireColumn) = 0 Then
Columns(iCounter).Delete
End If
Next iCounter
End Sub
Il faudrait donc une macro après qui permette de transformer :
| Champion 3000: Nom1, Prénom1 | | | | | | | |
| Unique | Infos à recup1-1 | Infos à recup1-2 | Infos à recup1-3 | Infos à recup1-4 | Infos à recup1-5 | Infos à recup1-6 |
| Unique2 | Infos à recup2-1 | Infos à recup2-2 | Infos à recup2-3 | Infos à recup2-4 | Infos à recup2-5 | Infos à recup2-6 |
en ce tableau :
| Champion 3000: Nom1, Prénom1 | Unique | Infos à recup1-1 | Infos à recup1-2 | Infos à recup1-3 | Infos à recup1-4 | Infos à recup1-5 | Infos à recup1-6 | Unique2 | Infos à recup2-1 | Infos à recup2-2 | Infos à recup2-3 | Infos à recup2-4 | Infos à recup2-5 | Infos à recup2-6 |
J'ai donc un problème pour trouver la macro avant et la macro d'après car je pense que je n'utilise pas les bonnes syntaxes.
J'ai beau chercher je ne trouve pas la bonne fonction permettant d'utiliser "SI ne contient pas X en A OU Y en B OU Z en B alors supprimer la ligne"
Et je ne trouve pas non plus celle qui permet de coller lignes les unes à la suite des autres et répeter cette manoeuvre pour traiter cette demande sur plusieurs personnes.