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
|
Option Explicit
Public Sub test()
majOngletMois "janvier"
End Sub
Sub majOngletMois(strNomDeLaFeuille As String)
Dim ongletExport As Worksheet
Dim ligneExport As Long
Dim ligneExportmax As Long 'Dernière ligne de l'onglet export
Dim colonneExport As Integer
Dim ongletMois As Worksheet
Dim ligneMois As Long
Dim colonneMois As Integer
Dim ligneExiste As Boolean
Dim estLigneDifferente As Boolean
Set ongletExport = ThisWorkbook.Worksheets("mise à jour")
Set ongletMois = ThisWorkbook.Worksheets(strNomDeLaFeuille)
ligneExportmax = ongletExport.UsedRange.Rows.Count 'Dernière ligne de l'onglet Export
'Parcourir les lignes de l'onglet Export
For ligneExport = 2 To ligneExportmax
'On recherche la ligne de l'onglet Export dans l'onglet Mois
ligneExiste = False
For ligneMois = 2 To ongletMois.UsedRange.Rows.Count
estLigneDifferente = False
For colonneExport = 1 To 11
If ongletMois.Cells(ligneMois, colonneExport) <> ongletExport.Cells(ligneExport, colonneExport) Then
estLigneDifferente = True
Exit For
End If
Next colonneExport
If Not estLigneDifferente Then
ligneExiste = True
Exit For
End If
Next ligneMois
'Si la ligne de l'onglet Export existe dans l'onglet Mois
'on fait une mise à jour
'sinon, on l'ajoute
If ligneExiste Then
'Mettre à jour les informations variables
ongletMois.Cells(ligneMois, 12) = ongletExport.Cells(ligneExport, 12)
ongletMois.Cells(ligneMois, 13) = ongletExport.Cells(ligneExport, 13)
ongletMois.Cells(ligneMois, 14) = ongletExport.Cells(ligneExport, 14)
ongletMois.Cells(ligneMois, 15) = ongletExport.Cells(ligneExport, 15)
Else
'Ajouter une ligne dans l'onglet
ongletExport.Range("A" & ligneExport & ":P" & ligneExport).Copy
ongletMois.Paste Destination:=ongletMois.Range(ongletMois.Cells(ongletMois.UsedRange.Rows.Count + 1, 1), _
ongletMois.Cells(ongletMois.UsedRange.Rows.Count + 1, 16))
End If
Next ligneExport
Set ongletMois = Nothing
Set ongletExport = Nothing
End Sub |
Partager