Textbox créée dans un frame ne répond pas

Résolu
Bonjour à tous,

J'ai créé une macro qui ajoute un frame dans une feuille Excel et qui ensuite crée une textbox à l'intérieur de ce frame.

Le processus de création fonctionne très bien mais lorsque j'essaie de rentrer du texte dans la textbox, rien ne se passe.

Bizarrement, si je vais dans le mode création et en ressort, la textbox est soudainement accessible. Pourquoi ne l'est-elle pas dès le début?

Voici mon code:

Sub Bouton1_Click()

Dim Frm As Object
Dim TxtB As Control

'Crée un frame
Set Frm = Worksheets(1).OLEObjects.Add(ClassType:="Forms.Frame.1")

'Crée la textbox dans le frame
Set TxtB = Frm.Object.Controls.Add("Forms.TextBox.1")
With TxtB
.Left = 10
.Top = 10
.Width = 100
.Height = 20
End With

End Sub

Merci d'avance!

2 réponses

  1. Contributeur
    Bonjour,

    Je pense que la Frame n'est pas active et donc les contrôles non plus.

    Il faut essayer d'ajouter :

    Frm.Activate

    avant le End Sub

    A tester
    1
    1. Bonjour,

      Ça fonctionne maintenant. Merci beaucoup!
      0
  2. Bonjour,

    Essayez de rajouter dans le with txtb :
    .value = "-"

    Comme cela, un texte est déjà affiché à l'intérieur.
    Je ne sais pas si cela résoudra le problème mais peut-être que si ;-)

    Bonne journée
    0
    1. Bonjour rEVOLV3r,
      Malheureusement, ça ne marche pas. Le tiret s'affiche correctement mais la textbox est toujours inactive.
      Une autre idée?
      0
    2. et ajouter .enabled=true ?
      0
    3. Ca ne marche pas non plus.
      0