taille des commentaires auto avec largeur fixe

bravojr

XLDnaute Nouveau
taille des commentaires auto avec largeur fixe [RESOLU]

bonjour,

voici deux codes que j'utilise pour modifier la taille des commentaires :

AutoSize la taille des commentaires :
HTML:
Sub AutoSize()
  For Each c In ActiveSheet.Comments
    c.Shape.TextFrame.AutoSize = True
  Next c
End Sub

Modification de la taille zone commentaire :
Code:
Sub tailleZoneCommentaire()
  For Each c In ActiveSheet.Comments
    c.Shape.Width = 60
    c.Shape.Height = 40
  Next c
End Sub

est il possible d'avoir un code faisant le mix de ces deux là, pour pouvoir définir la largeur du commentaire et que sa hauteur soit "auto"...?

Merci de vos réponse
 
Dernière édition:

MJ13

XLDnaute Barbatruc
Re : taille des commentaires auto avec largeur fixe

Bonjour,

Essayes en copiant les 2 lignes avec 60 et 40 à la fin sous la ligne avec true à la fin.
Ah NON autant pour moi je n'avais pas bien compris, mais cela risque d'être difficile; essaies plusieurs solutions et dis nous si il y en a une qui focntionne.
 
Dernière édition:

MJ13

XLDnaute Barbatruc
Re : taille des commentaires auto avec largeur fixe

Re bonjour

Tu peux tester ce code

Code:
Sub AutoSize_larg60()
  For Each c In ActiveSheet.Comments
    c.Shape.TextFrame.AutoSize = True
    c.Shape.Width = 60
  Next c
End Sub

Je pense qu'il ne faut pas savoir programmer pour faire ceci, juste une petite compréhension et adaptation du code.
 

bravojr

XLDnaute Nouveau
Re : taille des commentaires auto avec largeur fixe

Salut... je vous répond avec un peu de retard...

merci de ta réponse MJ13

mais ce code définie la taille général du commentaire en auto puis définie une largeur fixe...
et donc mon commentaire est tronqué en hauteur...

pour ce que j'aimerai (voir tout mon commentaire avec une largeur fixée), il faudrait une seule commande du genre :

Code:
c.Shape.Height.AutoSize = True

mais ca marche pas...
...voilà mon problème...

encore merci de votre aide!!
 

Benjam85

XLDnaute Nouveau
Bonjour, même si ce post date, je me permets de poster de nouveau car j'ai exactement le même besoin que l'auteur.

J'ai donc repris le code de l'avant dernier post que l'auteur remerciait en indiquant que tout fonctionnait.

Malheureusement pour moi ce n'est pas le cas. Si la largeur est bien fixée de la valeur que j'indique dans le code, le commentaire n'est pas ajusté à la taille du texte. Une partie du texte reste caché dans mes commentaires les plus longs.

Merci d'avance pour votre aide !
 

MJ13

XLDnaute Barbatruc
Bonjour à tous

@Benjam85 : Ce que tu demandes n'est pas simple à faire.

Voici un exemple à adapter:

VB:
Sub TailleFixeLargeurCommentaire()
For Each c In ActiveSheet.Comments
'c.Visible = True
NbCarCo = Len(c.Text)
'Texte = c.Text
NewLargeur = 100
'c.Shape.Height = 100   ' Hauteur
'GoTo suite
c.Shape.Fill.ForeColor.RGB = RGB(170, 255, 155)
c.Shape.TextFrame.Characters.Font.Name = "Arial"
c.Shape.TextFrame.Characters.Font.Size = 9
c.Shape.Width = NewLargeur 'largeur

If NbCarCo < 30 Then c.Shape.Height = 100
If NbCarCo >= 30 And NbCarCo < 100 Then c.Shape.Height = 150
If NbCarCo >= 100 Then c.Shape.Height = NbCarCo - 50

suite:
c.Shape.Line.Transparency = 0# 'degré d'opacité de la bordure
c.Shape.Line.ForeColor.SchemeColor = 8 'bordure en noir
c.Shape.Line.Weight = 0.25 'épaisseur de la bordure

Next c
End Sub
 

Discussions similaires

Réponses
3
Affichages
140
Réponses
4
Affichages
363

Statistiques des forums

Discussions
314 010
Messages
2 104 521
Membres
109 055
dernier inscrit
Nonoo