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 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
|
Sub comparer_2_fichiers()
Dim nom_classeur1 As String
Dim Feuille As String
Dim a, l, m, k, i, j, z As Integer
nom_classeur1 = InputBox("tapez le nom du classeur ou se trouvent les appels d'offres")
Feuille = InputBox("tapez le nom de la feuille a traiter")
Workbooks.Add
ActiveWorkbook.SaveAs "C:\Documents and Settings\JMDUPOUX\Bureau\produit CHU accepté-supprimé.xls"
Workbooks(nom_classeur1 & ".xls").Worksheets(Feuille).Activate 'compte le nombre de ligne jusqu'a cellule vide
l = ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Row 'pour le 1er fichier
Workbooks("TOUS LES ARTICLES SUPPRIMES dernier.xls").Worksheets("Art Supprimés").Activate 'compte le nombre de ligne jusqu'a cellule vide
m = ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Row 'pour le 2nd fichier et la 1ere feuille
k = 1 ' variable ligne pour le fichier produit CHU accepté-supprimé.xls
For i = 2 To l Step 1 'boucle du 1er fichier "CHU.xls", pour comparer les articles de mon client
For j = 2 To m Step 1 'boucle du 2er fichier "TOUS LES ARTICLES SUPPRIMES dernier.xls", pour trouver les articles si des articles de mon client sont supprimés ou bloqués
If Workbooks(nom_classeur1 & ".xls").Worksheets("Feuille").Cells(i, 3) = Workbooks("TOUS LES ARTICLES SUPPRIMES dernier.xls").Worksheets("Art Supprimés").Cells(j, 1) Then
Workbooks(nom_classeur1 & ".xls").Worksheets("Feuille").Row(i).Copy ' si article trouvé, la macro copie la ligne
Workbooks("produit CHU accepté-supprimé.xls").Worksheets("Feuil1").Row(k).PasteSpecial ' et colle la ligne dans la feuille 1 du fichier "produit CHU accepté-supprimé.xls"
k = k + 1
End If
If j = m Then ' une fois que la macro est venue à bout du la feuille "Art Supprimés" du fichier "TOUS LES ARTICLES SUPPRIMES dernier.xls"
' elle s'attaque à la feuille "Art Bloqués" du fichier "TOUS LES ARTICLES SUPPRIMES dernier.xls"
Workbooks("TOUS LES ARTICLES SUPPRIMES dernier.xls").Worksheets("Art Bloqués").Activate 'compte le nombre de ligne jusqu'a cellule vide
z = ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Row 'pour le 2nd fichier et la 2nd feuille
For a = 2 To z Step 1
If Workbooks(nom_classeur1 & ".xls").Worksheets("Feuille").Cells(i, 3) = Workbooks("TOUS LES ARTICLES SUPPRIMES dernier.xls").Worksheets("Art Bloqués").Cells(a, 1) Then
Workbooks(nom_classeur1 & ".xls").Worksheets("Feuille").Row(i).Copy ' si article trouvé, la macro copie la ligne
Workbooks("produit CHU accepté-supprimé.xls").Worksheets("Feuille").Row(k).PasteSpecial ' et colle la ligne dans la feuille 1 du fichier "produit CHU accepté-supprimé.xls"
k = k + 1
End If
Next a
End If
Next j
Next i
End Sub |
Partager