Xcel 2007 et propriété AutoSize des Shapes

lesglaieuls Messages postés 2 Date d'inscription jeudi 21 février 2008 Statut Membre Dernière intervention 3 février 2010 - 3 févr. 2010 à 10:16
fd30 Messages postés 2 Date d'inscription dimanche 12 septembre 2004 Statut Membre Dernière intervention 29 mai 2012 - 29 mai 2012 à 23:10
Bonjour,

j'aimerais savoir pourquoi (et comment contourner) le code suivant executé sous Xcel 2003 marche bien, mais qu'il ne fait rien sous 2007.

Dim Shapes_Col As Shapes
Set Shapes_Col = ActiveWorkbook.Sheets("Feuil1").Shapes


Set Obj = Shapes_Col.AddLabel(msoTextOrientationHorizontal, 100, 100, 0, 0) ' Vous remarquerez que je fais VOLONTAIREMENT un label de taille nulle
Obj.TextFrame.AutoSize = True
Obj.TextFrame.Characters.Text = "tutu"

Sous 2003 -> Autoresize qui marche du feu de Dieu
Sous 2007 -> Que dalle.

Je me suis bien sûr empressé de faire mumuse avec textFrame2 sous 2007 et le code suivant ne marche pas mieux.

Set Obj = Shapes_Col.AddLabel(msoTextOrientationHorizontal, 100, 100, 0, 0)
Obj.TextFrame2.AutoSize = msoAutoSizeShapeToFitText
Obj.TextFrame2.TextRange.Text = "toto"

Merci de vos réponses

5 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 228
3 févr. 2010 à 10:53
Bonjour,
pas essayé, mais essaye de mettre d'abord le texte, puis l'autosize


____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 228
3 févr. 2010 à 11:03
Je ne trouve par ailleurs aucune propriété Autosize, tant pour la collection Shapes que pour un objet Shape.
Cela a probablement une raison : tous les objets Shapes n'acceptent peut-être pas cette propriété. Si ta collection comprend des shapes qui en sont exclus ===>> marche pas !


____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
0
lesglaieuls Messages postés 2 Date d'inscription jeudi 21 février 2008 Statut Membre Dernière intervention 3 février 2010
3 févr. 2010 à 11:05
C'est quand même couillon une regression pareille.
Je suis en train de testeouiller en jouant sur les orientations
0
fd30 Messages postés 2 Date d'inscription dimanche 12 septembre 2004 Statut Membre Dernière intervention 29 mai 2012
29 mai 2012 à 23:09
comme ça cela fonctionne chez moi pour la derniere zone de texte.
attention s'il y a une image dans ta feuille, tu auras un message d'erreur.

For Each c In Sheets("ordo").Shapes
c.Select
nom = c.Name
Sheets("1").Shapes(nom).TextFrame.AutoSize = True
Next c
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
fd30 Messages postés 2 Date d'inscription dimanche 12 septembre 2004 Statut Membre Dernière intervention 29 mai 2012
29 mai 2012 à 23:10
For Each c In Sheets("ordo").Shapes
petite erreur
For Each c In Sheets("1").Shapes
0