Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

pb "autosize" avec commentaire

1 réponse
Avatar
j-pascal
Bonjour,

Dans la seconde partie du code suivant, l'adaptation de la fenêtre du
commentaire se fait avec Width et Heigh, mais si je ne conserve
qu'AutoSize, elle est plus petite que le contenu ! Par ailleurs, j'ai
un carré à la fin de la ligne (et j'en avais un autre quand j'ajoutais
un interligne).

'-------------
With .Comment.Shape.OLEFormat.Object.Font
.Name = "Tverdana"
.Size = 10
.Bold = True
.ColorIndex = 11 '3
.Interior.ColorIndex = 34
End With

With [d3].Comment.Shape
' .AutoSize = True
.Width = 400
.Height = 30
End With
'-------------

Fonctionne :

With [d3].Comment.Shape
.Width = 400
.Height = 30
End With

Ne fonctionne pas :

With [d3].Comment.Shape
.AutoSize = True
End With



Merci pour vos lumières,

JP

1 réponse

Avatar
j-pascal
Bonsoir Denis !

(Ce post me permet de voir qu'il m'est arrivé à tort de t'appeler
"Michel" !! Désolé !)

J'ai un peu adapté à mes besoins car j'ai :

LeTexte = "Fichier exporté : " & Fichier & vbCrLf & "(" &
NomFichierImport & ".)"

... mais c'est un détail.

Merci bcp, c'est parfait !

JP

PS : j'ai voulu isoler ce code de "commentaire" dans une autre
procédure (toujours dans la module standard).
J'ai déclaré en tête (après "Option Explicit"), en variables "Public" :
Fichier et NomFichierImport.
Le contenu des dites variables est calculé en début de la première
procédure.

Ca ne fonctionne pas (le commentaire reste vide) !

J'ai dû oublier qqch !



Bonjour J-Pascal,

Voici un exemple comment ajouter et formater un commentaire à une cellule :


'-------------------------------------------
Sub test()
Dim LeTexte As String

LeTexte = "Bonjour à tous"
CommentAjout Range("d5"), LeTexte

End Sub
'-------------------------------------------
Sub CommentAjout(rg As Range, Texte As String)
With rg
.ClearComments
Set Commentaire = .AddComment
End With
With Commentaire
.Text Texte
With .Shape
.Fill.Visible = msoTrue
.Fill.ForeColor.SchemeColor = 38
.Fill.BackColor.SchemeColor = 22
.Fill.Transparency = 0#
.Fill.TwoColorGradient msoGradientHorizontal, 2
With .OLEFormat.Object
.Font.Name = "Arial"
.Font.Size = 14
.Font.Bold = True
.Font.ColorIndex = 2
.AutoSize = True
End With
End With
End With
End Sub
'-------------------------------------------





"j-pascal" a écrit dans le message de groupe de
discussion : Bonjour,

Dans la seconde partie du code suivant, l'adaptation de la fenêtre du
commentaire se fait avec Width et Heigh, mais si je ne conserve
qu'AutoSize, elle est plus petite que le contenu ! Par ailleurs, j'ai
un carré à la fin de la ligne (et j'en avais un autre quand j'ajoutais
un interligne).

'-------------
With .Comment.Shape.OLEFormat.Object.Font
.Name = "Tverdana"
.Size = 10
.Bold = True
.ColorIndex = 11 '3
.Interior.ColorIndex = 34
End With

With [d3].Comment.Shape
' .AutoSize = True
.Width = 400
.Height = 30
End With
'-------------

Fonctionne :

With [d3].Comment.Shape
.Width = 400
.Height = 30
End With

Ne fonctionne pas :

With [d3].Comment.Shape
.AutoSize = True
End With



Merci pour vos lumières,

JP