<HTML>Bonjour
Il existe une collection pour cet objet "comment", c'est la collection comments. Tu peux ainsi boucler sur tous les objets commentaires pour une feuille donnée et éventuellement les concaténer (les mettre bout à bout)
Sub test()
For Each cmt In ActiveSheet.Comments
If Not Intersect(cmt.Parent, Selection) Is Nothing Then cmt_all = cmt_all & cmt.Text & Chr(10)
Next cmt
If cmt_all <> "" Then MsgBox (cmt_all)
End Sub
'la macro ci-dessous permet d'enrichir des commentaires avec plusieurs interventions de différents users ; dans cet exelmple, vous avez besoin de dessiner une boîte texte avec la barre d'outils commandes/contrôles
Sub Macro1()
'
' Macro1 Macro
' Macro enregistrée le 12/02/02 par Royer ' et modifiée à la mano
'
Dim cl As Range, cmt_user As String
Set cl = Selection
cmt_user = "" & Application.UserName & " :" & Chr(10)
cmt_saisie = ActiveSheet.TextBox1.Text
If HasComment(cl) = False Then cl.Cells(1, 1).AddComment
cl.Comment.Shape.Placement = xlFreeFloating
cl.Comment.Shape.TextFrame.AutoSize = True
cl_cmt = cl.Comment.Text
cl_cmt_text = IIf(cl_cmt = "", cmt_user & cmt_saisie & Chr(10), cl_cmt & Chr(10) & cmt_user & cmt_saisie & chr10 & Chr(10))
cl.Comment.Text Text:=cl_cmt_text
cl.Select
End Sub
Function HasComment(rg As Range) As Boolean
Dim txNote
On Error Resume Next
txNote = rg.Comment.Text
Select Case Err
Case 0: HasComment = True 'MsgBox "Note de la cellule active: " & txNote
Case 91: HasComment = False ' MsgBox "pas de note dans la cellule active: "
Case Else: HasComment = False ' MsgBox "Erreur non prévue" & Err
End Select
On Error GoTo 0</HTML>