Sub Actualiser()
Dim nbNew&, nbOld&
' nouveaux éléments de Tab1
'nombre d'éléments de Tab1
nbNew = Application.WorksheetFunction.CountA(Sheets("Tab1").Columns(1)) - 1
'nombre d'éléments de Tab3 déjà issus de Tab1
nbOld = Application.WorksheetFunction.CountIf(Sheets("Tab3").Range("D:D"), 1)
If nbOld < nbNew Then
With Sheets("Tab1")
'copie nouveaux éléments de Tab1 vers Tab3
.Cells(1, "a").Offset(nbOld + 1).Resize(nbNew - nbOld, 3).Copy
Sheets("Tab3").Cells(Rows.Count, "a").End(xlUp).Offset(1).PasteSpecial Paste:=xlPasteValues
'placer le chiffre 1 dans la colonne D de Tab3 pour les éléments copiés
Selection.Offset(, 3).Resize(, 1) = 1
End With
End If
' nouveaux éléments de Tab2
'nombre d'éléments de Tab2
nbNew = Application.WorksheetFunction.CountA(Sheets("Tab2").Columns(1)) - 1
'nombre d'éléments de Tab3 déjà issus de Tab2
nbOld = Application.WorksheetFunction.CountIf(Sheets("Tab3").Range("D:D"), 2)
If nbOld < nbNew Then
With Sheets("Tab2")
'copie nouveaux éléments de Tab1 vers Tab3
.Cells(1, "a").Offset(nbOld + 1).Resize(nbNew - nbOld, 3).Copy
Sheets("Tab3").Cells(Rows.Count, "a").End(xlUp).Offset(1).PasteSpecial Paste:=xlPasteValues
'placer le chiffre 2 dans la colonne D de Tab3 pour les éléments copiés
Selection.Offset(, 3).Resize(, 1) = 2
End With
End If
End Sub