Peut on ajouter un textbox sur un formulaire par c

  • Initiateur de la discussion Angelo
  • Date de début
A

Angelo

Guest
Bonjour le forum
afin de rendre mon apllication durable dans le temps je susi contraint de prévoir une partie 'aministration' qui permet d'ajouter ou supprimer une opération à mon tableau
Ca j'y arrive tres bien
le souci est que pour remplir le tableau j'ai conçu un formulaire avec autant de textbox qu'il y a d'opération présente dans mon tableau
or si j'ajoute une opération je dois aussi ajouté un textbox et vous comprendrez bien que je peux pas demandé à l'utiisateur de le faire !

Est possible de le faire via une macro?
 

Jacques87

XLDnaute Accro
Bonjour

Voici la ligne de code à construire et à adapter pour répondre à ta question

ActiveSheet.OLEObjects.Add(ClassType:='Forms.TextBox.1', Link:=False, DisplayAsIcon:=False, Left:=180, Top:=130, Width:=110, Height:=25).Select

tu renseignes les valeurs pour la positionner et déterminer sa taille.
Bon courage

Message édité par: Jacques87, à: 14/03/2006 10:49
 
A

Angelo

Guest
Lorsque je met le nom de mon formulaire
Code:
Opération.OLEObjects.Add(ClassType:='Forms.TextBox.1', Link:=False, DisplayAsIcon:=False, Left:=180, Top:=130, Width:=110, Height:=25).Select

cela me fait une erreur : membre de methode ou de données introuvable en me surlignant le OLEObjects :S
 

Jacques87

XLDnaute Accro
Re

en effet Angelo, je n'ai pas réfléchi plus loin que le bout de mon nez
Cette méthode ajoute des controls sur une feuille mais pas dans un userform (formulaire).

Je dois quitter (cause repas)
Je regarderai en début d'après midi et si tu n'as pas de réponse je te recontacterai

Bon appétit
 

Jacques87

XLDnaute Accro
Angelo,

Après un petit repas rapide, voici la solution à ton problème

Dim montexte As Control
Set montexte = UserForm1.Controls.Add('Forms.TextBox.1')
montexte.Left = 50
montexte.Top = 50
montexte.Width = 100
montexte.Height = 25

attention, tu devras adapter ce code en particulier en ce qui concerne le nom du formulaire

Bon courage
 
A

Angelo

Guest
apres mettre battu vaillaimant contre mon code j'ai hélas perdu :angry:


En effet il m'indique chaine de classe incorrect pour la ligne Set montexte = UserForm1.Controls.Add('Forms.TextBox.1')
 

Angelo7891

XLDnaute Junior
j'ai réussi à faire des textbox ainsi que des label

mais j'ai un souci car il faudrait que j'ai le nom de ces nouvelles form.

j'ai voulu l'impossé en mettant
Code:
montexte.Object.Name = Label44
ou
Code:
montexte.Object.Name = 'Label44'

j'hésitais pour les guillemets mais dans les 2 cas meme résultats :
propriété ou méthode non géré par l'objet
 

Jacques87

XLDnaute Accro
Bonjour Angelo

Tu as intérêt à leur donner leur nom au moment de la création

Dim montexte As Control
Set montexte = UserForm1.Controls.Add('Forms.TextBox.1')
montexte.Left = 50
montexte.Top = 50
montexte.Width = 100
montexte.Height = 25
montexte.Name = 'toto'

PS: je t'ai envoyé un message perso dans ta BAL

Bonne journée
 

Discussions similaires

Statistiques des forums

Discussions
312 332
Messages
2 087 367
Membres
103 528
dernier inscrit
maro