IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

VBA Selectionner Textbox --> problème [XL-2003]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 8
    Par défaut VBA Selectionner Textbox --> problème
    Bonjour,

    je veux créer une Textbox d'une certaine taille et puis la renommer. Pour la renommer, il faut d'abord sélectionner la Textbox.
    Or c'est la sélection de la TextBox créée qui ne marche pas chez moi.
    Pour détailler, je suppose de ne pas savoir le nom d'origine de la Textbox, donc par exemple je ne peux pas faire la ligne de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveSheet.Shapes("Textbox5").Select
    , car je ne sais pas si la Textbox en question est la 5ème ou 6ème ou porte un quel numéro.

    Mon code est le suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 196.5, 140.25, 26.25, 18#).Select
    Selection.Name = "TextBox_CC"
    J'ai déjà cherché plusieurs heures et dans différentes langues sur des divers forums pour trouver une solution, mais rien trouvé jusque-là.
    Est-ce que quelqu'un peut m'aider pour résoudre ce problème?

  2. #2
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut
    Bonjour,

    merci d'utiliser à l'avenir l'icône # pour le code …

    Ton code fonctionne sur ma version, si au moins tu avais précisé la tienne ‼

    Sinon tu n'as pas bien cherché ! Il n'est pas nécessaire, en fait plutôt déconseillé même, de sélectionner un objet pour le renommer !

    ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 196.5, 140.25, 26.25, 18).Name = "TextBox_CC"


    __________________________________________________________________________________________

    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion …

  3. #3
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 8
    Par défaut Re:
    Salut,

    merci pour vos réponses, vous m'avez beaucoup aidé

    et désolé de ne pas avoir utilisé le signe devant le code, c'est la première fois que j'ai posté qqch sur un forum.

    Et pour préciser: j'utilise encore l'excel 2003 à l'instant.


    Merci à tout le monde pour les réponses si rapides.

  4. #4
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut
    Et pourtant ton code d'origine fonctionne bien sur ma version 2003 …

    Maintenant, merci d'appliquer la ligne ci-dessous !

    __________________________________________________________________________________________

    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion …


    __________________________________________________________________________________________
    Quand un homme dit des obscénités à une femme, c'est un pervers. Quand une femme dit des obscénités à un homme, c'est 3€95 la minute …

  5. #5
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 8
    Par défaut encore un souci...
    Rebonjour,

    pour renommer la Textbox cela fonctionne très bien, mais maintenant comment fais-je pour la modifier, p.ex. je veux insérer une Formule dans la TextBox etc...
    Pour faire cela je dois la sélectionner non?

    Le problème persiste: il ne veut pas sélectionner la TextBox.

    Voici mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 196.5, 140.25, 26.25, 18#).Name = "TextBox_1"   
    ActiveSheet.Shapes("TextBox_1").Select
        Selection.Characters.Text = ""
        Selection.Formula = "Données!C11"
        Selection.ShapeRange.ScaleWidth 0.91, msoFalse, msoScaleFromTopLeft
        Selection.ShapeRange.ScaleHeight 0.88, msoFalse, msoScaleFromTopLeft
        Selection.ShapeRange.Fill.Visible = msoTrue
        Selection.ShapeRange.Fill.Solid
        Selection.ShapeRange.Fill.ForeColor.SchemeColor = 65
        Selection.ShapeRange.Fill.Transparency = 0#
        Selection.ShapeRange.Line.Weight = 0.75
        Selection.ShapeRange.Line.DashStyle = msoLineSolid
        Selection.ShapeRange.Line.Style = msoLineSingle
        Selection.ShapeRange.Line.Transparency = 0#
        Selection.ShapeRange.Line.Visible = msoFalse
        Selection.ShapeRange.IncrementLeft 260.5
        Selection.ShapeRange.IncrementTop 40.5
        With Selection.Font
            .Name = "Calibri"
            .FontStyle = "Gras"
            .Size = 10
            .Strikethrough = False
            .Superscript = False
            .Subscript = False
            .OutlineFont = False
            .Shadow = False
            .Underline = xlUnderlineStyleNone
            .ColorIndex = xlAutomatic
        End With

    Même si je fais le code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveSheet.Shapes("TextBox_1").Formula = "Données!C11"
    il me fait une erreur.


    Est-ce que qqn en connaît la cause ou la solution?

    P.S.: J'utilisé comme précédemment noté, encore l'Excel 2003.

  6. #6
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut
    Formula n'est pas une propriété de Shapes, ne pas confondre avec une cellule ‼

    Un TextBox est un objet graphique contenant uniquement du texte …


    Et non, pas besoin de sélectionner un objet pour le modifier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        With ActiveSheet.Shapes("TextBox_1")
            .Characters.Text = Worksheets("Données").[C11].Text
        End With

    __________________________________________________________________________________________

    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion …


    __________________________________________________________________________________________
    Le taux de radiation est plus élevé au Pôle Emploi qu'à Fukushima.

  7. #7
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2013
    Messages : 8
    Par défaut
    J'ai essayé ton code ci-dessus et cela ne fonctionne pas chez moi en excel 2003, il me donne l'erreur: "Propriété ou méthode non gérée par cet objet".

    Une suggestion pourquoi il me donne encore l'erreur?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 29
    Dernier message: 04/03/2007, 09h39
  2. Réponses: 3
    Dernier message: 24/01/2007, 19h20
  3. [VBA Access 2002][Débutant] Problème Recordset
    Par SamLeChiseuji dans le forum IHM
    Réponses: 11
    Dernier message: 08/06/2006, 08h29
  4. Style du text selectionné + textbox
    Par Fabouney dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 28/04/2006, 12h12
  5. [VBA] Calcul du PGDC --> Problème de résultat
    Par snoopy69 dans le forum Access
    Réponses: 16
    Dernier message: 25/08/2005, 14h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo