Ajout de commentaire par VBA : Figer sa position

Bonjour,

j'ai une feuille où j'insère un commentaire par macro sur la cellule sélectionnée.

Je souhaiterai pouvoir figer sa position.

Cela marche très bien avec les propriété ".Comment.Shape.Top" et ".Comment.Shape.Left" ,

mais seulement si on affiche le commentaire (".Comment.Visible = True")

Losrque on le survole, sa position est différente, définit par défaut par Excel.

Peut-on figer cette position de commentaire pour le "survol" ?

Voici le code utilisé actuellement :

Sub Ajout_Commentaire()

With Selection.Range("A1")
    .ClearComments
    .AddComment "Texte trop long." & vbNewLine & vbNewLine & "Nombre de caractères : " & Len(Selection.Range("A1")) & vbNewLine & "(Max. autorisé : 24)"
    .Comment.Visible = True
    With .Comment.Shape
        .TextFrame.AutoSize = True
        .Fill.ForeColor.SchemeColor = 45
        .AutoShapeType = msoShapeRoundedRectangle
        .Top = Selection.Top - 28
        .Left = Selection.Left + 170
        .TextFrame.Characters.Font.Size = 10
        .TextFrame.Characters(Start:=1, Length:=21).Font.Bold = True
    End With
End With

End Sub

EDIT : Petite question subsidiaire sur les Commentaires, je ne comprends pas pourquoi le code suivant ne traite que le 1er commentaire de la forme :

   With Cells.SpecialCells(xlCellTypeComments)
      .Comment.Shape.Fill.ForeColor.SchemeColor = 3
   End With
Rechercher des sujets similaires à "ajout commentaire vba figer position"