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
| Sub MàJ_Export()
'Déclaration de variables
Dim i As Integer
Dim j As Integer
Dim Ligne As Long
Ligne = (Range("B1").End(xlDown).Row + 1)
i = 2
j = 7
' Activation feuille source Bo
Sheets("source BO").Activate
' On fait une boucle tant qu'une case de la colonne E de la feuille Bo n'est pas vide
Do Until Worksheets("source BO").Cells(i, 5) = ""
Do Until Worksheets("Export").Cells(j, 6) = ""
' Si On a une egalité entre le SAP de la 1ere ligne de feuille BO et de la feuile Export
If Worksheets("source BO").Cells(i, 5).Value = Worksheets("Export").Cells(j, 6).Value Then
' On selectionne les case à droite de la case SAP de la feuille Bo
Sheets("source BO").Select
Union(Cells(i, 6), Cells(i, 7), Cells(i, 8), Cells(i, 9), Cells(i, 10), Cells(i, 11), Cells(i, 12), Cells(i, 13), Cells(i, 14), Cells(i, 15), Cells(i, 16), Cells(i, 17), Cells(i, 18), Cells(i, 19)).Select
' On copie la selection
Selection.Copy
' On selectionne la feuille export
Sheets("Export").Select
' On sélectionne l'endroit ou copier et copie
Cells(j, 7).Select
ActiveSheet.Paste
Sheets("source BO").Select
i = i + 1
j = 7
Else
' Si pas d'égalité On change de ligne de la feuille Export à comparer
j = j + 1
End If
' On change de ligne de la feuille BO à comparer
Loop
' Si on est pas rentré dans le if, c'est qu'on a jamais trouvé d'égalité donc on copie à la fin du tableau la ligne complète
Sheets("source BO").Select
Union(Cells(i, 1), Cells(i, 2), Cells(i, 3), Cells(i, 4), Cells(i, 5), Cells(i, 6), Cells(i, 7), Cells(i, 8), Cells(i, 9), Cells(i, 10), Cells(i, 11), Cells(i, 12), Cells(i, 13), Cells(i, 14), Cells(i, 15), Cells(i, 16), Cells(i, 17), Cells(i, 18), Cells(i, 19)).Select
Selection.Copy
Sheets("Export").Select
Range("B" & Ligne).Select
ActiveSheet.Paste
' On incrémente nos variable pour continuer
i = i + 1
j = 7
Loop
End Sub |
Partager