Mettre commenter bloc pour pouvoir modifier les commentaires

Bonsoir le forum

Dans le fichier joint je suis obligé de faire commenter bloc dans ThisWorkbook de la macro ci-dessous qui sert à afficher / masquer

la ligne A3 et les colonnes de G à J avant de pouvoir faire Clic Droit pour modifier le commentaire dans cellule A3 et F2

Merci pour vos retours

Cordialement

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal R As Range)       'Cliquez cellule A2 rappel dernier mois de l'année s'affiche (Pas de Double Clic)
  If R.Address = "$A$2" And R.Count = 1 Then Rows(3).Hidden = Not Rows(3).Hidden: R(1, 2).Select   'Modifier "$A$2" pour autre cellule
  If R.Address = "$F$2" And R.Count = 1 Then Columns("G:J").Hidden = Not Columns("G:J").Hidden: R(1, 2).Select   'Modifier "$F$2" pour autre cellule
End Sub
7toto.zip (42.18 Ko)

Bonjour

Je suis désolé mais je ne vois pas ce que tu demandes.

Bye !

Bonjour gmb

Oui ça ne m'étonne pas je m'exprime très mal.

Lorsque je veux modifier les commentaires des cellules A2 et F2 il faut auparavant mettre en commentaire la macro suivant qui est dans ThisWorkbook sinon ce n'est pas possible.

Je ne sais pas si je me suis fait bien comprendre.

Merci à toi

Cordialement

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal R As Range)       'Cliquez cellule A2 rappel dernier mois de l'année s'affiche (Pas de Double Clic)
  If R.Address = "$A$2" And R.Count = 1 Then Rows(3).Hidden = Not Rows(3).Hidden: R(1, 2).Select   'Modifier "$A$2" pour autre cellule
  If R.Address = "$F$2" And R.Count = 1 Then Columns("G:J").Hidden = Not Columns("G:J").Hidden: R(1, 2).Select   'Modifier "$F$2" pour autre cellule
End Sub

Salut al87, gmb,

le souci, lorsque tu cliques DROIT ou double-clique, c'est que VBA le considère D'ABORD comme un clic-GAUCHE et exécute le code correspondant AVANT d'exécuter l'option DROIT.

Il faut donc en tenir compte et, parfois, faire des acrobaties pour faire cohabiter des traitements différents (DROIT, GAUCHE, DOUBLE-CLIC) sur une même cellule.

Dans ton cas, il faut supprimer :

R(1, 2).Select

des deux lignes de ta macro.

A+

Bonjour curulis57

SUPER ça fonctionne.

Encore un petit truc je sais qu'il faut ajouter .[A1].select pour ne pas avoir à cliquer sur une autre cellule avant de pouvoir faire afficher / masquer la ligne ou les colonnes.

Merci à toi

A+

Cordialement

@curulis57

Ah! Trouvé

Mettre

Range("A1").Select

après les 2

.Hidden:

Merci beaucoup à toi

Résolu

Bonne fin d'après-midi

Cordialement

Dis, gros malin,

si tu remets un Select après l'avoir effacé, je ne vois pas où tu règles ton problème de commentaire...

Faudra trouver une autre solution...

A+

Oui j'ai vu après t'avoir répondu trop vite mais je suis parti et pas eu le temps de regarder.

Si tu as le temps vas-y car je répond de mon smartphone.

Cordialement

Salut al,

la solution la plus facile consiste à exécuter un double-clic sue [A2]- [F2] pour exécuter les opérations de masquage et de ne rien prévoir comme action pour le simple clic gauche : plus de conflit!

Pour le fun, je te mets ici l'USF que j'utilise pour afficher et manipuler les commentaires de façon plus smart, toujours activale sur un clic-droit.

A tester...

A+

3toto.xlsm (56.05 Ko)

@ curulis57

Je me suis inspiré de tes lumières et fait à ma façon de vieux!!!

Un GRAND merci à toi

Bonne fin de soirée

Cordialement

Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
  If Target.Address = "$A$2" And Target.Count = 1 Then
    Rows(3).Hidden = Not Rows(3).Hidden
    Range("A1").Select
    Cancel = True
  ElseIf Target.Address = "$F$2" And Target.Count = 1 Then
    Columns("G:J").Hidden = Not Columns("G:J").Hidden:
    Cancel = True
  End If
End Sub

Salut Al,

ah, non! Pas comme ça!

Je suis (presque) un vieux cheval aussi mais autant faire le plus joli possible...

Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
'
Cancel = True
If Not Intersect(Target, Union(Range("A2"), Range("F2"))) Is Nothing Then
    If Target.Column = 1 Then Rows(3).Hidden = Not Rows(3).Hidden 'Modifier "$A$2" pour autre cellule
    If Target.Column = 6 Then Columns("G:J").Hidden = Not Columns("G:J").Hidden 'Modifier "$F$2" pour autre cellule
    [A1].Select
End If
'
End Sub

Petite particularité que je souligne ici pour ton information : tu places ton code dans le module VBA de 'ThisWorkBook' ce qui veut dire que, en l'état, ce code est valable pour TOUTES les feuilles de ton fichier!

Teste l'effet en double-cliquant en 'MENU' [A2] ou [F2].

Bonne continuation, Al!

A+

Bonjour curulis57

Merci pour ton implication.

Ton fichier est mis de côté car il peut servir pour d'autres applications

Bonne journée

Cordialement

Bonjour curulis57 et le forum

pas sur ma messagerie donc pas vu ta façon de faire

Encore merci et ça fonctionne super

Bonne fin de WE

Cordialement

Rechercher des sujets similaires à "mettre commenter bloc pouvoir modifier commentaires"