Imaginons 2 cases vides B2 et D2
Lorsque j’ajoute un commentaire à la cellule B2 (sans éditer son contenu, toujours vide), j’aimerais qu’une macro écrive ”test réussi” en D2.
Y’a-t’il un code à la racine de la feuille possible pour accomplir celà ? L’ajout d’un commentaire déclenche-t’il un évènement ? Merci
Pour le reste, essaies de voir ce que tu peux avec les codes ci-dessous
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$B$2" Then
If HasComment(Target) Then [D2] = "test réussi"
End If
End Sub
Private Function HasComment(Cell As Range) As Boolean
Dim oComment As Comment
On Error Resume Next
Set oComment = Cell.Comment
If Not (oComment Is Nothing) Then HasComment = True
End Function
Bien le bonjour Staple, que le café croissant soit avec nous
Testé ton code et il ne fait aucun effet de mon côté.
Je souligne que j’ai la version d’Excel à jour issue d’Office 365 Business. Hors, il semble que la gestion des commentaires ait changé de type depuis Excel 2016
Pour peu, je cite eriiic
dans les dernières versions (que je n'ai pas), il me semble que les commentaires ancienne version sont devenus des 'Notes' et les (nouveaux) commentaires de nouveaux objet avec plus de propriétés (commentaires multiples de plusieurs utilisateurs qui communiquent etc)
Quelqu'un avec une de ces version devrait regarder ce nouvel objet, voir ses propriétés.
Et les anciens commentaires devenus des notes ont peut-être changé de collection (?) Ou un micmac approchant...
On est loin d'Excel là.
Tu avais une question relative aux Commentaires dans Excel, j'ai proposé un code VBA dans le message#4.
Il fonctionne sur ma version d'Excel.
Pas sur la tienne.
Attendons donc d'autres membres qui ont la même version que toi.
Fait. Je te remercie vraiment. Pourtant dans la vie je ne manque pas d’humour. Online, pas toujours simple de se caler sur la même fréquence radio Bon dimanche et merci pour les contributions que tu as apporté (bizarre que ça fonctionne chez toi et pas ici si tu as bien Excel 365 aussi, car je suis parti d’une feuille vierge)
Une autre solution dans le fichier joint avec cette macro qui permet de capturer la création ou l'effacement du commentaire :
VB:
Sub Capture()
Dim t#
With Feuil1
.[D2] = IIf(.[B2].Comment Is Nothing, "Non", "Oui")
End With
On Error Resume Next
Application.OnTime t, "Capture", , False
t = Now + 1 / 86400
Application.OnTime t, "Capture"
End Sub
Le processus est lancé par la macro Workbook_Open dans ThisWorkbook.
Bonjour, très en retard, je vous remercie (j’avais laissé filer)
Dorénavant, même ritournelle, la solution proposée fonctionne avec Excel 2013/2016 mais pas avec le tout dernier Excel venant d’Office 365, où la maniement des commentaires a été remanié, sans correspondance
D’autre part, c’était vraiment la modification de commentaires existants que je ciblais.
Bonjour ViroMajor
Je réveille un peu ce fil car j'ai la meme problématique. J'aimerais déclencher un process après un changement dans les commentaires d'une cellule. Je dis bien commentaires jusqu'à la version 2016 (16.0.9126.2259 en 32 bits ) chez moi, car depuis la version 2016 (16.0.11929.20436 en 32 bits) les commentaires sont maintenant appelés "notes" et les "nouveaux" commentaires servent à suivre les modifications des cellules (suite au travail en collaboration).
As-tu résolu ton problème ?
Merci
Bonne journée