Modifier un texte dans un Shape [Résolu]

Messages postés
377
Date d'inscription
lundi 3 avril 2006
Statut
Membre
Dernière intervention
22 août 2018
- - Dernière réponse : jordane45
Messages postés
25570
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
21 mai 2019
- 10 nov. 2010 à 18:46
Bonjour à tous,

Qulqu'un sait-il comment on peut modifier un texte dans un Shape enVBA ?

Les codes suivants ne fonctionnent pas :
ActiveSheet.Shapes(1).Select
ActiveSheet.Shapes(1).Text = "Texte"
  'Ou encore
ActiveSheet.Shapes(1).TextFrame.Characters.Text = "Texte"


Je crois qu'il existe une possibilité en passant par un ChartObject :
ActiveSheet.ChartObjects("Chart 1").Activate
ActiveChart.Shapes(1).TextFrame.Characters.Text = "Texte"

Mais je ne sais pas comment faire exactement ...

Merci de votre aide

Cordialement
Rataxes64
Afficher la suite 

Votre réponse

1 réponse

Meilleure réponse
Messages postés
25570
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
21 mai 2019
364
1
Merci
Bonjour,
en passant par l'enregistreur de macro j'ai obtenu ceci:

    ActiveSheet.Shapes("Oval 3").Select
    Selection.Characters.Text = "ceci est le nouveau texte"
    With Selection.Characters(Start:=1, Length:=26).Font
        .Name = "Calibri"
        .FontStyle = "Normal"
        .Size = 11
        .Strikethrough = False
        .Superscript = False
        .Subscript = False
        .OutlineFont = False
        .Shadow = False
        .Underline = xlUnderlineStyleNone
        .ColorIndex = 1
    End With
    Range("H18").Select
    ActiveSheet.Shapes("Oval 3").Select
    ActiveSheet.Shapes("Oval 3").Select
    Selection.Characters.Text = "texte modifié"
    With Selection.Characters(Start:=1, Length:=13).Font
        .Name = "Calibri"
        .FontStyle = "Normal"
        .Size = 11
        .Strikethrough = False
        .Superscript = False
        .Subscript = False
        .OutlineFont = False
        .Shadow = False
        .Underline = xlUnderlineStyleNone
        .ColorIndex = 1
    End With



en espérant que cela pourra t'aider.

Cordialement,
Jordane,
______________________________________________________
Règles du forum à lire avant de poster une question : ICI

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 139 internautes nous ont dit merci ce mois-ci

Commenter la réponse de jordane45

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.