Bonsoir
.Range("C14") = .Cells(9, 25 + Month(Date))
Dans la cellule C14 on copie la cellule de ligne 9, colonne 25 (Y) à laquelle on rajoute le décalage du mois en cours ce qui donne pour le 1er janvier : 25 + 1 = 26 (colonne Z) qui correspondant à janvier 2012
Et pour le 1er Septembre : 25 + 9 = 34 (colonne AH) qui correspond à Septembre 2012
PS : Suite à ton ajout si tu veux un décalage de 2 mois (ce que je n'avais pas compris au départ - J'avais pensé que tu avais fait une erreur (désolé) )il faut que tu prennes comme base la colonne 27
Donc la ligne devient
.Range("C14") = .Cells(9, 27+ Month(Date))
mibri a écrit :
Mais comment faire pour les copies des mois suivants .
Tu n'as rien à faire
Quand tu ouvriras ton fichier le 1er du mois suivant la macro copiera la cellule suivante dans C14
Correction de la macro pour que celle-ci soit valable les années suivantes
Une solution
Private Sub Workbook_Open()
If Day(Date) = 1 Then
With Sheets("Feuill1")
.Range("C14") = .Cells(9, 27 + Month(Date) + ((Year(Date) - 2012) * 12))
End With
End If
End Sub