Bonjour Sousou, Sylvanu,
Merci à tous les deux pour vos conseils et effectivement ça va bien plus vite avec les inhibition des flags
J'arrive à enregistrer les commentaires dans ma feuille "Data" :
Private Sub Worksheet_Change(ByVal Target As Range)
'Inhibition_Flag
Dim Ligne As Long
Dim Nb_Colonne As Long
'On sort si on n'est pas dans la plage active
If Intersect(Target, Range("D7:AH7,D10:AH10,D13:AH16,D18:AH19,D21:AH30,D33:AH34,D46:AH54")) Is Nothing Then Exit Sub
If ctrl = True Then Exit Sub
If Target.Count > 1 Then Exit Sub
If Target.Value = "" Then Exit Sub
Ligne = Sheets("Data").Range("A" & Rows.Count).End(xlUp).Row + 1
Sheets("Data").Range("A" & Ligne).Value = Cells(6, Target.Column).Value
Sheets("Data").Range("B" & Ligne).Value = Target.Value
Sheets("Data").Range("C" & Ligne).Value = Target.Row
Sheets("Data").Range("D" & Ligne).Value = Target.Column
Sheets("Data").Range("E" & Ligne).Value = Target.Comment.Text
'Dé_inhibition_Flag
End Sub
Par contre je n'arrive pas à faire le sens inverse :
Sub MonMois()
Dim i As Long, dl As Long
Range("D7:AH7").ClearContents 'efface les cellules
Range("D7:AH7").ClearComments 'efface les commentaires
Range("D10:AH10").ClearContents 'efface les cellules
Range("D10:AH10").ClearComments 'efface les commentaires
Range("D13:AH16").ClearContents 'efface les cellules
Range("D13:AH16").ClearComments 'efface les commentaires
Range("D18:AH19").ClearContents 'efface les cellules
Range("D18:AH19").ClearComments 'efface les commentaires
Range("D21:AH30").ClearContents 'efface les cellules
Range("D21:AH30").ClearComments 'efface les commentaires
Range("D33:AH34").ClearContents 'efface les cellules
Range("D33:AH34").ClearComments 'efface les commentaires
Range("D46:AH54").ClearContents 'efface les cellules
Range("D46:AH54").ClearComments 'efface les commentaires
ctrl = True 'pour ne pas lancer la macro Calendrier / change
With Sheets("Data")
dl = .Range("A" & Rows.Count).End(xlUp).Row 'derniere ligne
For i = 2 To dl 'boucle sur toutes les lignes de la feuille Data
If Month(.Range("A" & i).Value) = Sheets("BDD Générale").Range("D2").Value And Year(.Range("A" & i).Value) = Sheets("BDD Générale").Range("E2").Value + 2022 Then
Cells(.Range("C" & i).Value, .Range("D" & i).Value).Value = .Range("B" & i).Value
End If
Next
End With
ctrl = False
End Sub
Merci d'avance pour vos retours et bonne journée
Seb