DefInt A-Z
'nom de la feuille récap modifiable si un jour tu crées AN2013 avec bien sûr la feuille renommée !
Public Const FeuilRecap$ = "AN2012"
Public Const PremLigDonneesSource = 2, NoColDonneesSource = 2
Public Control As Object
Public Sub ButtonMiseAjour()
On Error GoTo TraitErreur: Err.Clear
Sheets(FeuilRecap$).Select: Cells.Clear: TotLig = 0
For Mois = 1 To 12
M$ = Choose(Mois, "janv", "fevr", "mars", "avri", "mai", "juin", "juil", "aout", "sept", "octo", "nove", "dece")
Feuil$ = "" 'recherche la feuil au cas elle serait renommée ! mais avec un minimum de 4 caract
For Each Control In Worksheets
If Left(LCase(Control.Name), Len(M$)) = M$ Then Feuil$ = Control.Name: Exit For
Next
If Feuil$ > "" Then 'feuil ok ... recopi les données
DernLig = Sheets(Feuil$).Columns(NoColDonneesSource).Rows(ActiveSheet.Rows.Count).End(xlUp).Row
For Lig = PremLigDonneesSource To DernLig
D$ = Sheets(Feuil$).Cells(Lig, NoColDonneesSource)
If D$ > "" Then TotLig = TotLig + 1: Sheets(FeuilRecap$).Cells(TotLig, 1) = D$
Next
End If
Next
Exit Sub
TraitErreur:
Msg$ = "Erreur " & Err.Source & " No " & Err.Number & vbLf & vbLf & Err.Description
MsgBox Msg$, vbCritical, "", Err.HelpFile, Err.HelpContext
On Error GoTo 0: Err.Clear: Exit Sub
End Sub