Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim MaPlage As Range, MaSomme#, titre$
Set MaPlage = Range("J2", Range("J" & Rows.Count).End(xlUp)) 'la plage a sommer
MaSomme = Application.WorksheetFunction.Sum(MaPlage) ' la somme
ActiveSheet.Range("J1").ClearComments 'suppression du commentaire
titre = "Montant total" 'titre dans le commentaire
With Range("J1").AddComment 'en ajoutant le commentaire
.Text Text:=titre & Chr(10) & Format(MaSomme, "#,##0.00") & " €" 'on met le texte global(titre + somme)
With .Shape.TextFrame
.AutoSize = True ' auto dimentionnement du commentaire
'.Characters.Font.ColorIndex = 0 ' on met tout le texte en noir(facultatif vu que l'on supprime le commentaire a chaque fois ))
.Characters.Font.Size = 10 ' le font size à 10
.Characters(Start:=1, Length:=Len(titre) + 1).Font.Bold = True 'le titre en gras
.Characters(Start:=Len(titre) + 1, Length:=100).Font.Color = vbRed 'tout le texte apres le titre( donc la somme) sera en rouge
'FACULTATIF et pour le rendre un peu plus sympa
.Parent.AutoShapeType = msoShapeRoundedRectangle 'on errondi les angles
.Parent.OLEFormat.Object.Interior.Color = RGB(100, 255, 100) 'couleur de fond du commentaire
End With
End With
End Sub