Aide pour convertir un fichier Excel

Bonjour a tous,
Pouvez-vous m'aider a convertir un fichier excel

14test.xlsx (16.58 Ko)

J'ai un fichier avec des centaines de lignes à traiter par semaine avec un code, une quantité et des repères dans plusieurs cellules et j'aimerais pouvoir regrouper les cellules dans une seule plus rapidement ( macro ou autre) car actuellement je copie et colle chaque repère dans la cellule principale.

A gauche le fichier de base, à droite le résultat attendu.

Par avance merci a tous.

Ced.

image

Hello,

Une proposition PowerQuery, pour les versions 2013 il faut juste l'installer via cette page

Si besoin de vba je fais ça dans la journée

https://www.microsoft.com/fr-be/download/details.aspx?id=39379

@+

14test-6.xlsx (28.11 Ko)

Bonjour et merci pour ton retour rapide BAROUTE78.

Le résultat attendu est le bon par contre je ne peux pas installer PowerQuery car j'ai Excel 2016.

Pour la façon dont tu as fait, pour mes autres fichiers, comment doit-je procédé?

Pour le VBA je suis preneur.

@+

Hello,

Il serait opportun de mettre à jour ton profil alors avec 2016.

Sur 2016 pas besoin d’installer powerquery c’est nativement intégré à Excel.

Si tu as d’autres fichiers comme ceci, avec Powerquery tu peux lui dire d’aller taper dans tous les fichiers et de récupérer les différents tableaux. (Prerequis: avoir un format de fichier similaire ça decomplexifie le truc).

Sinon tu dupliques ce fichier, et tu copies collés tes datas de ton autre fichier dans le tableau structuré de gauche.

Pour le VBA je te fais ça sauf si un Excelien le fait avant

@+

Merci

Pour le profil c'est fait.

Pour la suite j’attends pas de soucis, il n'y a pas d'urgence.

Hello,

Voici le code, c'est peut être pas le plus beau mais j'essaie en ce moment de m'améliorer sur la gestion des tableaux structurés en VBA

Sub TransformTable()

    Set ws = ThisWorkbook.Sheets("Feuil1")
    Set tbl = ws.ListObjects("Tableau1")

    vLigne = 4

    For Each tblRow In tbl.ListRows

        If tblRow.Range.Cells(1, 1).Value <> "" Then
        If vCode <> "" Then

                ws.Cells(vLigne, 1).Value = vCode
                ws.Cells(vLigne, 2).Value = vQte
                ws.Cells(vLigne, 3).Value = vConcatenate
                vLigne = vLigne + 1

            End If
            vCode = tblRow.Range.Cells(1, 1).Value
            vQte = tblRow.Range.Cells(1, 2).Value
            vConcatenate = ""
        End If

        For i = 3 To tbl.ListColumns.Count
            If tblRow.Range.Cells(1, i).Value <> "" Then
                If vConcatenate = "" Then
                    vConcatenate = tblRow.Range.Cells(1, i).Value
                Else
                    vConcatenate = vConcatenate & "," & tblRow.Range.Cells(1, i).Value
                End If
            End If
        Next i
    Next tblRow

    If vCode <> "" Then
        ws.Cells(vLigne, 1).Value = vCode
        ws.Cells(vLigne, 2).Value = vQte
        ws.Cells(vLigne, 3).Value = vConcatenate
    End If
End Sub

@+

BAROUTE78,

Le code j'en fais quoi après? non pas dans mon .....

car je ne maitrise pas du tout.

Le dernier fichier que j'ai demandé dans le même style, on m'avait mis un bouton regrouper où je cliquais et tout était OK.

Hello,

Et non pas dans le .....

Voici le fichier avec le bouton regrouper et si ça convient

@+

11test-6.xlsm (36.47 Ko)

Ouais super génial.

Juste un dernier petit truc à modifier si possible.

Peux-tu faire en sorte que le regroupage se fasse juste en dessous les en-têtes?

10test-6-1-nv.xlsm (31.84 Ko)

Hello,

Voici

@+

17test-6.xlsm (34.92 Ko)

MERCIII.

Bonne journée. je ferme le sujet.@+

Ced

Rechercher des sujets similaires à "aide convertir fichier"