Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 Filtrer et transférer des données vers une autre feuille

Dadi147

XLDnaute Occasionnel
Bonjour, comment puis-je transférer les données de chaque produit sur une feuille spéciale sous la condition des noms dans la première colonne
 

Pièces jointes

  • test.xlsx
    22.1 KB · Affichages: 3
Solution
Bonjour Dadi, Staple,
Un essai en PJ avec :
VB:
Sub Dispatche()
    On Error GoTo Fin
    Application.ScreenUpdating = False
    Dim DL%, L%, F
    DL = [A65500].End(xlUp).Row
    For Each F In Worksheets
        If F.Name <> "data" Then
            With Sheets(F.Name)
                .Range("A1:E10000").ClearContents
                .Cells(1, 1) = F.Name: .Cells(1, 2) = "km": .Cells(1, 3) = "prix"
            End With
        End If
    Next F
    For L = 2 To DL
        Feuille = Cells(L, "A")
        If Feuille = "" Then Exit Sub
        With Sheets(Feuille)
            .Cells(.[C65500].End(xlUp).Row + 1, 2) = Cells(L, 3)
            .Cells(.[C65500].End(xlUp).Row + 1, 3) = Cells(L, 5)
        End With
    Next L
    Exit Sub
Fin:
    MsgBox "La...

Staple1600

XLDnaute Barbatruc
Bonjour le fil, @Dadi147

@Dadi147
Comme déjà expliqué, en utilisant les possibilités offertes par le TCD
(Tableau Croisé Dynamique)
C'était dans une autre de tes discussions

Apparemment tu n'as pas essayé ma proposition ?
(qui ne nécessite aucune connaissance en VBA, puisque tout se fait dans Excel à la souris)
 

Dadi147

XLDnaute Occasionnel
Apparemment tu n'as pas essayé ma proposition ?
(qui ne nécessite aucune connaissance en VBA, puisque tout se fait dans Excel à la souris)
Bonjour... Franchement, j'ai essayé plusieurs fois, mais je n'ai pas réussi à mettre en œuvre la question, alors je vous ai raconté mon expérience. Je veux un code qui effectuera la tâche sans interférer avec moi. Merci de votre suivi.
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Dadi, Staple,
Un essai en PJ avec :
VB:
Sub Dispatche()
    On Error GoTo Fin
    Application.ScreenUpdating = False
    Dim DL%, L%, F
    DL = [A65500].End(xlUp).Row
    For Each F In Worksheets
        If F.Name <> "data" Then
            With Sheets(F.Name)
                .Range("A1:E10000").ClearContents
                .Cells(1, 1) = F.Name: .Cells(1, 2) = "km": .Cells(1, 3) = "prix"
            End With
        End If
    Next F
    For L = 2 To DL
        Feuille = Cells(L, "A")
        If Feuille = "" Then Exit Sub
        With Sheets(Feuille)
            .Cells(.[C65500].End(xlUp).Row + 1, 2) = Cells(L, 3)
            .Cells(.[C65500].End(xlUp).Row + 1, 3) = Cells(L, 5)
        End With
    Next L
    Exit Sub
Fin:
    MsgBox "La feuille " & Cells(L, "A") & " n'existe pas."
End Sub
 

Pièces jointes

  • test (30).xlsm
    30.9 KB · Affichages: 2

Discussions similaires

Réponses
2
Affichages
369
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…