Bonjour ,
Tout d’abord je tiens à préciser que Je ne suis pas un confirmé en programmation.
Voici mon problème que j’ai tenté de résoudre après des heures de recherches mais en vain car
Je ne retrouve pas en Feuille 2 les doublons qui devraient s’y trouver.
En effet j`ai une base de données (feuille1) et des nouvelles informations (feuille2).
Je souhaiterais comparer ce que j`ai dans ma nouvelle feuille par rapport à ce qui est déjà présent dans la base de données.
Ce qui est commun à la feuille 1 et 2, doit être supprimé dans la feuille 2.
A l’issue, le résultat de la feuille 2 doit venir se rajouter à la FEUILLE 1-
Merci pour l’aide que vous voudrez bien m’apporter.
voici mon fichier.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 Sub TriHorizontalSELECTIONAlain() Dim PlgALAIN As Range Application.ScreenUpdating = False With Worksheets("Feuil1") Set PlgALAIN = .Range("X3:AA782") End With TriHorizontalALAIN PlgALAIN Set PlgALAIN = Nothing End Sub Sub TriHorizontalALAIN(Rg As Range) Dim R As Range For Each R In Rg.Rows R.Sort Key1:=R.Cells(1, 1), Order1:=xlAscending, Header:=xlNo Next End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Sub RANGEBasedonnees() Sheets("Feuil1").Range("A1:D998").Value = Sheets("Feuil1").Range("Q3:T1000").Value End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Sub RANGESELEC() Sheets("Feuil2").Range("A1:D780").Value = sheets("Feuil1").Range("X3:AA782").Value End SubPar avance merci.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 Sub compare() Dim LastLig1 As Long, LastLig2 As Long, i As Long Dim c As Range Application.ScreenUpdating = False LastLig1 = Sheets("Feuil1").Cells(Rows.Count, 1).End(xlUp).Row With Sheets("Feuil2") LastLig2 = .Cells(Rows.Count, 1).End(xlUp).Row For i = LastLig2 To 1 Step -1 Set c = Sheets("Feuil1").Range("A1:A" & LastLig1).Find(.Range("A" & i).Value, lookat:=xlWhole) If Not c Is Nothing Then Set c = Nothing .Rows(i).Delete LastLig2 = LastLig2 - 1 End If Next i If LastLig2 > 0 Then .Range("A1:A" & LastLig2).Copy Sheets("Feuil1").Range("A" & LastLig1 + 1) End With End Sub
Partager