[résolu]Comment améliorer ce code pour que le commentaire n'apparaisse qu'en survol ?

anthoYS

XLDnaute Barbatruc
Bonjour,


Avec ce code, le commentaire reste affiché. Comment faire pour qu'il n'apparaîsse qu'en survol (commentaire classique) ?

(voir image ci-dessous)
codeCom.png

Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)If Not Application.Intersect(Target, Range("A:A")) Is Nothing Then
textee = Target.Offset(0, 1).Value
With Target
If .Comment Is Nothing Then
.AddComment (textee & vbLf)
.Comment.Shape.TextFrame.Characters.Font.Bold = True
.Comment.Visible = True
End If
SendKeys "%im"
End With
Target.Offset(1, 0).Select
End If
End Sub


Merci
à+ ;)
 
Dernière édition:

anthoYS

XLDnaute Barbatruc
Re : Comment améliorer ce code pour que le commentaire n'apparaisse qu'en survol ?

re,

merci DoubleZero !

j'aimerais pouvoir les modifier de suite, je veux que le code me permette de créer un commentaire avec le texte de B toujours.

je ne sais pas si je suis clair. J'aimerais éditer le commentaire après le double clic et ensuite visible au survol.
 

DoubleZero

XLDnaute Barbatruc
Re : Comment améliorer ce code pour que le commentaire n'apparaisse qu'en survol ?

Re-bonjour,

... je ne sais pas si je suis clair...

Quant à moi, je ne sais si j'ai bien compris :)

Code:
Option Explicit
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Dim textee
    If Not Application.Intersect(Target, Range("A:A")) Is Nothing Then
        textee = Target.Offset(0, 1).Value
        With Target
            If Not .Comment Is Nothing Then
                .Comment.Delete
                .AddComment (textee & vbLf)
                .Comment.Shape.TextFrame.Characters.Font.Bold = True
                .Comment.Visible = False
            End If
            SendKeys "%im"
        End With
        Target.Offset(1, 0).Select
    End If
End Sub

A bientôt :)
 

anthoYS

XLDnaute Barbatruc
Re : Comment améliorer ce code pour que le commentaire n'apparaisse qu'en survol ?

merci DoubleZero.

Mais quand je double clique ça me renvoie le curseur sur la cellule du dessous.

Le but : créer un commentaire en A2 si double clic ici, en mettant en gras le contenu de B2 en commentaire et ensuite que je puisse éditer directement ce commentaire.

là, c'est plus clair ?


Merci
à+
 

DoubleZero

XLDnaute Barbatruc
Re : Comment améliorer ce code pour que le commentaire n'apparaisse qu'en survol ?

Re-bonjour,

... là, c'est plus clair ?..

Ai-je bien compris le besoin :confused:

Code:
Option Explicit
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Dim textee
    If Not Application.Intersect(Target, Range("A:A")) Is Nothing Then
        If Target.Offset(, 1) = "" Then Exit Sub
        textee = Target.Offset(0, 1).Value
        With Target
            On Error Resume Next
            .Comment.Delete
            .AddComment (textee & vbLf)
            .Comment.Shape.TextFrame.Characters.Font.Bold = True
            .Comment.Visible = False
            SendKeys "%im"
        End With
        Target.Offset(0, 1).Select
    End If
End Sub

A bientôt :)
 

anthoYS

XLDnaute Barbatruc
Re : Comment améliorer ce code pour que le commentaire n'apparaisse qu'en survol ?

Re-bonjour,



Ai-je bien compris le besoin :confused:

Code:
Option Explicit
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Dim textee
    If Not Application.Intersect(Target, Range("A:A")) Is Nothing Then
        If Target.Offset(, 1) = "" Then Exit Sub
        textee = Target.Offset(0, 1).Value
        With Target
            On Error Resume Next
            .Comment.Delete
            .AddComment (textee & vbLf)
            .Comment.Shape.TextFrame.Characters.Font.Bold = True
            .Comment.Visible = False
            SendKeys "%im"
        End With
        Target.Offset(0, 1).Select
    End If
End Sub

A bientôt :)

Non mais merci. On ne doit pas pouvoir le faire...

c'est pas grave je me contenterais de celui-ci (de code).
 

Si...

XLDnaute Barbatruc
Re : Comment améliorer ce code pour que le commentaire n'apparaisse qu'en survol ?

salut

à DoubleZero :D;) : pour éditer le commentaire, il doit-être visible.
Donc avec un coup je te vois, un coup je ne te vois pas, on peut essayer le
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal R As Range, Cancel As Boolean)
  If Application.Intersect(R, [A:A]) Is Nothing Then Exit Sub
  Cancel = 1
  R.ClearComments
  If R(1, 2) <> "" Then
    R.AddComment (R(1, 2).Text)
    R.Comment.Shape.TextFrame.Characters.Font.Bold = 1
    SendKeys "%im"
    R.Comment.Visible = 0
  End If
End Sub

J'évite le Sendkeys qui peut désactiver le clavier numérique.
 

DoubleZero

XLDnaute Barbatruc
Re : Comment améliorer ce code pour que le commentaire n'apparaisse qu'en survol ?

Re-bonjour, bonjour S:D:D:D,

... pour éditer le commentaire, il doit-être visible...

Moi avoir cru :( que la modification du commentaire devait intervenir suivant la valeur présente en colonne b.

... J'évite le Sendkeys qui peut désactiver le clavier numérique.

Peut-on activer à nouveau le clavier par macro ?

Merci, Si... et...

A bientôt :):)
 

anthoYS

XLDnaute Barbatruc
Re : Comment améliorer ce code pour que le commentaire n'apparaisse qu'en survol ?

salut

à DoubleZero :D;) : pour éditer le commentaire, il doit-être visible.
Donc avec un coup je te vois, un coup je ne te vois pas, on peut essayer le
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal R As Range, Cancel As Boolean)
  If Application.Intersect(R, [A:A]) Is Nothing Then Exit Sub
  Cancel = 1
  R.ClearComments
  If R(1, 2) <> "" Then
    R.AddComment (R(1, 2).Text)
    R.Comment.Shape.TextFrame.Characters.Font.Bold = 1
    SendKeys "%im"
    R.Comment.Visible = 0
  End If
End Sub

J'évite le Sendkeys qui peut désactiver le clavier numérique.

C'est bien ça que je voulais Si..., merci. Merci également à DoubleZero !
 

Discussions similaires

Statistiques des forums

Discussions
312 198
Messages
2 086 149
Membres
103 132
dernier inscrit
hedfahmi