afficher les commentaires et les masquer au double clic

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

pascal21

XLDnaute Barbatruc
bonjour/soir à tous
j'ai retrouvé ce bout de code dans un de mes classeurs,à l'origine de pierrejean et modifié par Thierry par la suite
Code:
OptionExplicit 

Sub PierreJeanCorrectif() 
Dim Cel As Range 

ForEach Cel In Range('A1:A30') 
* * With Cel 
* * * * .ClearComments 
* * * * * * If .Value > 0 And .Value <= 50 Then 
* * * * * * * * With .AddComment 
* * * * * * * * * * .Text Text:='Attention Prevoir....' 
* * * * * * * * * * .Visible = False 
* * * * * * * * * * .Shape.TextFrame.AutoSize = True 
* * * * * * * * EndWith 
* * * * * * * * 
* * * * * * ElseIf .Value < 0 Then 
* * * * * * * * * 
* * * * * * * * * With .AddComment 
* * * * * * * * * * * * .Text Text:='Attention Depassement de ' & Cel 
* * * * * * * * * * * * .Visible = True 
* * * * * * * * * * * * * * * With .Shape 
* * * * * * * * * * * * * * * * .TextFrame.AutoSize = True 
* * * * * * * * * * * * * * * * * * With .OLEFormat.Object 
* * * * * * * * * * * * * * * * * * * * * * With .Font 
* * * * * * * * * * * * * * * * * * * * * * * * .Name = 'Arial' 
* * * * * * * * * * * * * * * * * * * * * * * * .Size = 10 
* * * * * * * * * * * * * * * * * * * * * * * * .ColorIndex = 3 
* * * * * * * * * * * * * * * * * * * * * * * * .Bold = True 
* * * * * * * * * * * * * * * * * * * * * * EndWith 
* * * * * * * * * * * * * * * * * * EndWith 
* * * * * * * * * * * * * * EndWith 
* * * * * * * * * EndWith 
* * * * * * EndIf 
* * EndWith 
Next Cel 
EndSub
il permet de lancer un commentaire dans une cellule automatiquement selon la valeur de celle-ci
j'aimerais y apporter quelques améliorations pour ce qui commence à être mon 'usine à gaz'
1) que le commentaire soit visible par exemple grâce à sheets activate
et que je puisse le fermer sur un double/clic ou clic droit dans la cellule
attention j'ai déjà des commentaires qui ne seront pas concernés par cette disposition dans la feuille
ainsi que d'autres commandes au double clic
on va dire que ça concernera la plage A6:a50
je modifierai par la suite dans mon 'usine à gaz'
comment réaliser ceci
merci
 
Dernière édition:
Re : afficher les commentaires et les masquer au double clic

Code:
Sub MasqueCmt()
  On Error Resume Next
  For Each c In ActiveSheet.Comments
    c.Visible = False
  Next c
End Sub

Sub AfficheCmt()
  On Error Resume Next
  For Each c In ActiveSheet.Comments
    c.Visible = True
  Next c
End Sub
j'ai trouvé ces 2 bouts de code tout simples sur le site de Boisgontier
manque plus qu'a les affecter à la zone a6:a50
 
Re : afficher les commentaires et les masquer au double clic

Bonsoir Pascal

pour afficher / masquer un commentaire sur double click dans une cellule, essaye également le code ci-dessous, à placer dans le module de la feuille concernée :

Code:
Option Explicit
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim c As Comment
Set c = Target.Comment
If Not c Is Nothing Then Target.Comment.Visible = Not Target.Comment.Visible
Cancel = True
End Sub

bonne soirée
@+
 
Re : afficher les commentaires et les masquer au double clic

Re

pour lancer l'événement uniqueent dans une plage de cellule, rajoute la ligne en gras :

Code:
Option Explicit
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim c As Comment
[B]If Intersect(Target, Range("A6:A50")) Is Nothing Then Exit Sub[/B]
Set c = Target.Comment
If Not c Is Nothing Then Target.Comment.Visible = Not Target.Comment.Visible
Cancel = True
End Sub
@+
 
Re : afficher les commentaires et les masquer au double clic

Re,

permet de déterminer si la cellule double cliquer (target) se trouve dans la plage A6:A30, renvoie un objet "range", si celui-ci est vide (Is Nothing), sort de la procédure.... en espérant avoir été clair...

@+
 
Re : afficher les commentaires et les masquer au double clic

bon je me suis emballé un peu vite tout à l'heure je n'arrive pas à faire fonctionner le code de pierrot
alors je remets celui là sur le gril
je cherche juste à le faire fonctionner sur une zone précise de cellules
("A6:A50")
Code:
Sub MasqueCmt()
  On Error Resume Next
  For Each c In ActiveSheet.Comments
    c.Visible = False
  Next c
End Sub



Sub AfficheCmt()
  On Error Resume Next
  For Each c In ActiveSheet.Comments
    c.Visible = True
  Next c
End Sub
c'est dans un module naturellement
 
Re : afficher les commentaires et les masquer au double clic

Code:
Dim Cel As Range
For Each Cel In Range("A6:A50")
With Cel
.ClearComments
End With

Next Cel
bonsoir j'ai aussi trouvé ce bout de code qui fonctionne sur une zone de cellule
comment l'adapter pour que (et c'est là que je viens de voir que ne n'ai pas précisé cette chose) au double clic dans une cellule avec le commentaire visible celui ci se masque
cette macro efface le comm
je veux juste masquer et je ne trouve pas la syntaxe pour ça

donc pour résumer:
pour chaque cellule de la zone a6:a50 double clic masque le commentaire
voila je vous ai mâché le boulot reste plus qu'a traduire en langage VBA
bonne nuit et merci
 
Re : afficher les commentaires et les masquer au double clic

Bonjour Pascal, Soenda

Le code que je t'avais proposé était à utiliser dans le module de la feuille concernée, comme précisé dans mon 1er post. En l'occurence la variable "target" représente la cellule double cliquée et est déclarée comme telle dans la procédure événementielle (ByVal Target As Range) ... Cette procédure affiche ou masque le commentaire lorsque tu double click sur une cellule de la plage A6:A50 ... et ce uniquement si le commentaire existe...

bonne journée
@+
 
Re : afficher les commentaires et les masquer au double clic

bonjour pierrot
bin oui au temps pour moi
je ne sais pas se qui c'est passé dans mon claseur
j'ai dû m'emmeller les pinceaux et ne pas retrouver le fonctionnement du code proposé
le pire est qu'il me semblait correct ce code
alors je l'avais mis de coté et cherché une autre solution
merci
du coup il faut que je recherche j'avais un code qui affichait dans la zone concernée enfin il me semble c'était tard quand je travaillais là dessus
bonne fêtes de fin d'année et merci
soenda
clear.comments efface le commentaire moi je veux juste le masquer
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour