Extraction et réorganisation données

Bonjour

Je sollicite votre aide sur ce problème que j'ai.

J'ai une extraction de données à faire sur SAP qui ressemble au fichier joint. Mon seul problème c'est que je dois crée les numéros d'ensemble manuellement (colonne C), ensuite séparer les produits des accessoires sur 2 colonnes différentes(lettre+1) et le résultat finir doit finir par un publipostage.

Est-ce qu'une macro pourrait me permettre d'avoir mes infos comme sur la feuille résultats?

10classeur1.xlsx (60.98 Ko)

Bonjour,

une solution via une macro.

Sub test()
    Set wsi = Worksheets("sortieexcel")
    With Worksheets("resultats")
        dli = wsi.Cells(Rows.Count, 1).End(xlUp).Row
        .Cells.Delete
        wsi.Rows("1:" & dli).Copy
        .Cells(1, 1).PasteSpecial Paste:=xlPasteValues
        .Columns("G").Insert shift:=xlToRight
        .Range("G1") = .Range("H1")
        .Range("H1") = "Sub item"
        For i = dli To 2 Step -1
            k = .Cells(i, 3)
            If k <> "" Then
                If Not IsNumeric(Right(k, 1)) Then
                    .Cells(i, "G") = .Cells(i, "H")
                    .Cells(i, "H") = ""
                    .Rows(i).Insert shift:=xlDown
                End If
            Else
                .Rows(i).Delete shift:=xlUp
            End If
        Next i
        If .Cells(2, 3) = "" Then .Rows(2).Delete shift:=xlUp
    End With
    Set wsi = Nothing
End Sub

Merci! Ça marche!

h2so4 a écrit :

Bonjour,

une solution via une macro.

Sub test()
    Set wsi = Worksheets("sortieexcel")
    With Worksheets("resultats")
        dli = wsi.Cells(Rows.Count, 1).End(xlUp).Row
        .Cells.Delete
        wsi.Rows("1:" & dli).Copy
        .Cells(1, 1).PasteSpecial Paste:=xlPasteValues
        .Columns("G").Insert shift:=xlToRight
        .Range("G1") = .Range("H1")
        .Range("H1") = "Sub item"
        For i = dli To 2 Step -1
            k = .Cells(i, 3)
            If k <> "" Then
                If Not IsNumeric(Right(k, 1)) Then
                    .Cells(i, "G") = .Cells(i, "H")
                    .Cells(i, "H") = ""
                    .Rows(i).Insert shift:=xlDown
                End If
            Else
                .Rows(i).Delete shift:=xlUp
            End If
        Next i
        If .Cells(2, 3) = "" Then .Rows(2).Delete shift:=xlUp
    End With
    Set wsi = Nothing
End Sub

Merci pour cette premiere solution! Mon SI a réussi à faire en sorte que je puisse avoir mes ensembles sous forme de codes (Colonne D). J'ai essayé de reprendre votre macro pour recréer les ensembles sur la feuille Résultats comme vous l'avez fait mais ne trouve pas la ligne à modifier. Faut-il repenser une autre macro pour faire cela?

Chaque ensemble commence par 2 lettres AW,01 CA01 etc...

Je pense faire une colonne avec une recherche pour afficher le code A, A1 etc comme sur mon premiere fichier. Est-ce que celà pourrait faire l'affaire?

5sans-titre.zip (47.58 Ko)

désolé, mais je n'ai pas compris la demande, je ne vois pas comment arriver au résultat demandé en premier message avec le fichier que tu viens de fournir.

Rechercher des sujets similaires à "extraction reorganisation donnees"