Résoudre problème VBA

j'ai une petite question

quand j'exécute la macro, sa me recopie les données déjà copie une idée pour remédier a sa, j'aimerais alimenté ma feuille 1 et copies colle en feuille 2 tout en sachant que ma feuille 1 changeras souvent

15copier-coller.xlsm (21.58 Ko)

Bonjour,

ma feuille 1 changeras souvent, Qu'est-ce qui changera souvent, la quantité de données, la structure de la feuille?

En partant du principe que la structure des feuilles peut varier, voici le code modifié, le principe: on recopie l'ensemble des données dans la feuille 2 puis on supprime les doublons.

Sub copier_coller()
    Dim f1 As Worksheet, f2 As Worksheet
    Dim DerLig_f1 As Long, DerLig_f2 As Long, DerCol_f2 As Long, i As Long
    Dim x As Range
    Dim intitule As String

    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    'identifier les onglets
    Set f1 = Worksheets(1)
    Set f2 = Worksheets(2)
    'identifier la dernière ligne des données de chaque feuille
    DerLig_f1 = f1.Cells(Rows.Count, 1).End(xlUp).Row
    DerLig_f2 = f2.Cells(Rows.Count, 1).End(xlUp).Row
    DerCol_f2 = f2.Cells(1, "A").End(xlToRight).Column

    'Recopie des données de la feuille 1 vers la feuille 2
    For i = 1 To DerCol_f2
        intitule = f2.Cells(1, i)
        'recherche de l'intitulé dans la feuille 1
        With f1.Rows(1)
            Set x = .Find(intitule, lookat:=xlWhole)
            If Not x Is Nothing Then Range(f1.Cells(2, x.Column), f1.Cells(DerLig_f1, x.Column)).Copy f2.Cells(DerLig_f2 + 1, i)             'copie les données
        End With
    Next i
    'suppession des lignes contenant les matricules en double dans la feuille 2
    DerLig_f2 = f2.Cells(Rows.Count, 1).End(xlUp).Row 'identifier la nouvelle dernière ligne de la feuille 2
    f2.Range("A1:D" & DerLig_f2).RemoveDuplicates Columns:=Array(2), Header:=xlYes 'suppression des doublons
End Sub

Cdlt

merci pour le retour

mais petit problème

voir fichier joint, la je plante a mon tour

15classeur2.xlsm (40.34 Ko)

Bonjour,

Il serait quand même souhaitable que vous décriviez ce qui doit être fait, car ça manque cruellement d'explications précises.

Revoici le fichier, la macro rempli les données pour chaque colonne de la feuille 2, reste à savoir s'il faut apporter des modifications au résultat obtenu!

Cdlt

Rechercher des sujets similaires à "resoudre probleme vba"