macro vba pour comparer des fichiers et supprimer des lignes
Bonjour, débutante dans la programmation sous VBA je cherche à créer une macro permettant de comparer 3 fichier ( fiche de base de donnée, mouvement2015 et mouvement 2016) et celui ci consiste à vérifier si les mots clé situé dans la colonne auxiliaire (de la base de donnés) se retrouvent dans les feuilles (mouvement 2016 ou mouvement2016) sinon de supprimer toute la ligne.
je me retrouve bloqué car un message d'erreur s'affiche à partir de for each
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| Sub mouvement2015()
Dim sheetmouvementannée1 As String, sheetmouvementannée2 As String, sheetbasededonné As String, sheetDestination As String
sheetmouvementannée1 = InputBox("Entrez le nom de la feuille des mouvements de l'année N")
sheetmouvementannée2 = InputBox("Entrez le nom de la feuille des mouvements de l'année N+1")
sheetbasededonné = InputBox("Entrez le nom de la feuille de base de donnée")
sheetDestination = InputBox("Entrez le nom de la feuille de destination des résultats")
Dim basededonné As Worksheet, Destination As Worksheet, mouvementannée1 As Worksheet, mouvementannée2 As Worksheet
Set basededonné = Worksheets(sheetbasededonné)
Set Destination = Worksheets(sheetDestination)
Set mouvementannée1 = Worksheets(sheetmouvementannée1)
Set mouvementannée2 = Worksheets(sheetmouvementannée2)
basededonné.Select
Dim plage As Range
Dim auxiliaire2015 As Range, auxiliaire2016 As Range
'Dim auxiliaire As Range
Dim cellule As Range
Dim DERLIGNE As Integer, i As Integer
DERLIGNE = Range("A1048576").End(xlUp).Row
Set plage = Range(" C2:A" & DERLIGNE)
Set auxiliaire2015 = mouvementannée1.Range("A1")
set auxiliaire2016 = mouvementannée2.Range("A1")
For Each cellule In plage
For i = 1 To 10
If cellule.Value <> auxiliaire2015.Offset(i).Value And auxiliaire <> auxiliaire2016.Offset(i).Value Then cellule.EntireRow.Delete
Next i
Next
End Sub |