Microsoft 365 Macro VBA

Bruno09

XLDnaute Nouveau
Bonjour, J'ai une macro que j'utilise pour insérer une note.
Lorsque je clique sur "CTRL+e" ma note apparaît et j'inscris ce que j'ai besoin à l'intérieur. ce que j'aimerais c'est que lorsque je change de cellule la note se masque. J'ai beau essayer de trouver le bon code mais je n'y parvient pas.
Merci de m'aider

Sub Code_Balance()
'
' Code_Balance Macro
'
' Touche de raccourci du clavier: Ctrl+e
'
ActiveCell.ClearComments
ActiveCell.AddComment
ActiveCell.Comment.Visible = True
ActiveCell.Comment.Text Text:="8075:" & Chr(10) & "8095:" & Chr(10) & "8215:" & Chr(10) & "8345:" & Chr(10) & "8551:"
ActiveCell.Comment.Shape.TextFrame.AutoSize = True
ActiveCell.Select

With ActiveCell.Comment.Shape
.TextFrame.Characters.Font.Bold = True
.OLEFormat.Object.Interior.ColorIndex = 3

End With
End Sub
 
Solution
Re

Fais CTRL+e pour exécuter la macro
Attention Il y a du code dans "ThisWorkbook" et dans le "Module1"

1628816491897.png


Merci de ton retour

@Phil69970

Phil69970

XLDnaute Barbatruc
Bonjour @Bruno09

Ceci masque le commentaire de la cellule active
VB:
Sub Code_Balance()
'
' Code_Balance Macro
'
' Touche de raccourci du clavier: Ctrl+e
'
ActiveCell.ClearComments
ActiveCell.AddComment
ActiveCell.Comment.Visible = True
ActiveCell.Comment.Text Text:="8075:" & Chr(10) & "8095:" & Chr(10) & "8215:" & Chr(10) & "8345:" & Chr(10) & "8551:"
ActiveCell.Comment.Shape.TextFrame.AutoSize = True

'***Masque le commentaire***
ActiveCell.Comment.Visible = False
'***************************

With ActiveCell.Comment.Shape
    .TextFrame.Characters.Font.Bold = True
    .OLEFormat.Object.Interior.ColorIndex = 3
End With
End Sub

Merci de ton retour

@Phil69970
 

Bruno09

XLDnaute Nouveau
Bonjour @Phil69970 ,
Si je rajoutes cette commande je dis le contraire de ce que j'ai demandé plus haut dans la macro.

Ce que je veux c'est que ma note s'affiche lorsque je fait "CTRL+e". J'entre les infos dans ma note et après que j'ai inscris mes infos j'aimerais lorsque je change de cellule la note se masque.

Merci
 

Phil69970

XLDnaute Barbatruc
Re
J'ai lu trop vite ....
Je te propose cette nouvelle version :
VB:
Public VarCel
Sub Code_Balance()
'
' Code_Balance Macro
'
' Touche de raccourci du clavier: Ctrl+e
'
ActiveCell.ClearComments
ActiveCell.AddComment
ActiveCell.Comment.Visible = True
ActiveCell.Comment.Text Text:="8075:" & Chr(10) & "8095:" & Chr(10) & "8215:" & Chr(10) & "8345:" & Chr(10) & "8551:"
ActiveCell.Comment.Shape.TextFrame.AutoSize = True

With ActiveCell.Comment.Shape
    .TextFrame.Characters.Font.Bold = True
    .OLEFormat.Object.Interior.ColorIndex = 3
End With

'***Recupere l'adresse de la cellule active***
VarCel = ActiveCell.Address
'***************************
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
If VarCel <> ActiveCell.Address Then Range(VarCel).Comment.Visible = False
End Sub

@Phil69970
 
Dernière édition:

Bruno09

XLDnaute Nouveau
Bonjour,
Je viens de comprendre, mes macros sont enregistré sur un module et je vois que la tienne est enregistré sur la feuille. Comme j'ai 8 feuilles (onglets), comment puis-je faire pour avoir cette macro sans avoir à la copier sur toutes les feuilles? Ou la laisser sur le module et modifier la macro?
Merci,
 

Discussions similaires

Statistiques des forums

Discussions
315 094
Messages
2 116 148
Membres
112 670
dernier inscrit
Flow87