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 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82
|
Sub Copiercoller()
Dim derniereligne, Dernièreligne As Integer, LaPlage As String, NoligneCollage As Integer, Calcul As Double
'Ouvrir UPIT mois en cours'
Workbooks.Open ("http://dtii.pcinfo.inetpsa.com/document/111317641.pc1fm")
Workbooks("111317641.pc1fm").Activate
'Copier UPIT dans M'
Worksheets("Feuille principale").Select
Range("A1:IF556").Select
Selection.Copy
Workbooks("macro_comparer.xls").Activate
Sheets(" M").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
'Fermer UPIT mois en cours'
Workbooks("111317641.pc1fm").Close False
'Ouvrir fichier UPIT mois -1"
Workbooks.Open ("http://dtii.pcinfo.inetpsa.com/document/111027740.pc1fm")
Workbooks("111027740.pc1fm").Activate
'Copier onglet UPIT mois -1 dans M-1'
Worksheets("Feuille principale").Select
Range("A1:IF556").Select
Selection.Copy
Workbooks("macro_comparer.xls").Activate
Sheets("M_1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
'Fermer UPIT mois -1'
Workbooks("111027740.pc1fm").Close False
'Comparaison de 2 colonnes avec ADPC, avec recherche de fin de fichier et copier-coller'
Set F1 = Worksheets(" M")
Set F2 = Worksheets("M_1")
Set FS = Worksheets("Synthese M et M_1")
'Ensuite, tu instancies tes plages dans F1 et F2
Dim LaPlage1 As Range
Dim Plage2 As Range
Dim NoLigneF1 As Integer, NoLigneF2 As Integer, NoLigneFS As Integer
F1.Activate
Set LaPlage1 = F1.Range(Cells(1, 1), Cells(F1.Range("D1").SpecialCells(xlCellTypeLastCell).Row, 1))
F2.Activate
Set Plage2 = F2.Range(Cells(1, 1), Cells(F2.Range("D1").SpecialCells(xlCellTypeLastCell).Row, 1))
'Ensuite, tu parcours la plage
FS.Activate
For Each LaCell In LaPlage1
With Plage2
Set Trouvé = .Find(LaCell, LookIn:=xlValues)
'LaCell contient le code de la ligne (dans la colonne 1 ds mon ex.
If Not Trouvé Is Nothing Then 'On cherche une correspondance dans F2
'Le code de la ligne a été trouvé...
'... on compare la cellule de la colonne voulu dans F1
'... à la cellule de la même colonne dans F2
'On traite
NoLigneF1 = LaCell.Row
NoLigneF2 = Trouvé.Row
NoLigneFS = NoLigneFS + 1
FS.Cells(NoLigneFS, 1) = LaCell
Worksheets("NoLigneF2").Select
Selection.Copy
Worksheets("intermédiaire").Activate
Selection.Paste
Worksheets("NoligneF1").Select
Selection.Copy
Worksheets("intermediraie").Select
Selection.Paste
'Soustraction des 2 lignes et c'est la que le bas blesse.....'
End If
End With
Next
End Sub |