![]() |
|
Forum
|
|
|
#1 (permalink) |
|
Guest
Messages: n/a
|
Bonjour,
je cherche à generer un formulaire de saisie à partir d'un macro et toutes les aides dont je dispose n'utilisent que l'assistant (que je ne peux utiliser) ... Vous savez comment on ajoute un userform à une page ? on lui ajoute des controls etc ... En tout cas merci beaucoup ! Laeti |
| ANNONCES | |||
|
|
|
|
#2 (permalink) |
|
Guest
Messages: n/a
|
salut,
tout d'abord on ne peut plus ajouter une userform à une page depuis excel97.(office95). Cette fonction a été modifié et est accéssible de la façon suivante : dans excel , - selectionner outils - macros - editeur visual basic. - insertion - userform. Voilà à toi de creuser. bon courage |
|
|
#3 (permalink) |
|
Guest
Messages: n/a
|
Bonjour Laeti, Renato
Vu que pas de gens sont interressés par ce genre de truc, j'ai trouvé bon de faire une sorte de moàde d'emploi basic pour générer un UserForm de Saisie... Je vous laisse découvrir le Fichier Joint... Bon Aprèm @+Thierry (PS c'est deux fois plus long de faire un truc comme ça "with full explanations", que de développer une appli !!... J'espère que ça va vous servir !!) |
|
|
#5 (permalink) |
|
Guest
Messages: n/a
|
Comme disent les Ricains "You are Welcome"
Si tu as besoin d'explications complémentaires, n'hésite pas non plus. J'espère que ce petit fichier servira à tous ceux (celles) qui débutent en UserForm... Car il est vrai que ce n'est pas toujours évident au tout début. Bon Aprèm @+Thierry |
|
|
#7 (permalink) |
|
Guest
Messages: n/a
|
bonjour forum
l'explication de ton userform est tres bien expliquer thierry je ne connais pas grand chose en vba sois pas surpris de ma question faut il toujours mettre textebox1 textebox2 ou peut on utiliser les noms des champs qu'on doit remplir ( par exemple utiliser nom.value a la place de textebox1.value) autre point comment on fait pour avoir une saisie numerique obligatoire dans textebox1 bonne fin d'apres midi a vous tous marmotte |
|
|
#8 (permalink) |
|
Guest
Messages: n/a
|
Re Bonsoir tous les gens de ce Fil...
Et oui, STéph... John Walkenbach aurait sûrement fabriqué le UserForm en VBA en cliquant sur les bouton "Step by Step" en créant des captures écran à la volée !!!.... Suis pas arrivé à faire çà !!! Pour Marmotte, ta question est loin d'être surprenante ou idiote ! Une première recommandantion est de faire très très très attention quand on nomme les Controls ActiveX... C'est carrément une source de gros plantage si on fait n'importe quoi, même au risque de perdre définitivement le classeur sur lequel on s'est acharné des heures... ça m'est arrivé ##*%##!!!^^@### Donc pour renommer un controle (TextBox, ListBox, ComboBox, OPtionButton...etc etc etc) quand on est sur VBE avec la fenetre de Design Active sur le userForm... Il suffit de clicker sur par exemple la TextBox1... Tu fais F4 (ou Menu=> Affichage => Fenêtre de Propriétés) La première propriété est le Nom du Control Actif... Ici donc "TextBox1"... Tu peux le renommer en tapant diretement dans cette fenêtre propriété. RECOMMANDATIONS POUR LES NOM D'ACTIVEX ! Les espaces et caratères spéciaux sont Forbidden Faire ultra attention de ne pas dupliquer un Nom... cela peut finir en catastrophe avec un fichier irrécupérable... (Car parfois VBE ne raffraichit pas assez vite les controls... et quand il se rend compte d'un doublon, c'est le big bordel !!) Les nom doivent quand même représenter ce qu'est le contrôle à l'origine, par exemple en convention de développeurs, une TextBox "customizée" se nommera par exemple TxbClient, TxbArticle, et une ComboBox par exemple : CbxAdresse, une ListBox : LibVille........ Enfin c'est surtout pour toi, car en écrivant et, surtout plus tard en lisant un code, tu sauras de suite de quel contrôle il s'agit... Ici dans mes démos, je laisse soit le nom par défaut, soit, pour la compréhension de tous je nomme carrément TextBoxClient, ComboBoxAdresse... etc etc... avec les copié collé je ne tape pas grand chose ! Pour ta question "comment on fait pour avoir une saisie numerique obligatoire dans TextBox1 Deux Solutions dans l'évènement change (on intercepte l'erreur dès le début!) La première (ma préférée !!) simple discrête et infaillible sans stresser le user !! Private Sub TextBox1_CHANGE() If Not IsNumeric(TextBox1) Then With TextBox1 .SetFocus .SelStart = 0 .SelLength = Len(TextBox1.Text) '(special Thanx à Monsieur STéphane post du 2000/06/29 sur le MPFE) End With Exit Sub End If End Sub La seconde avec un message pour agacer le User (déjà qu'il est stressé, le pauvre !!) Private Sub TextBox1_CHANGE() If Not IsNumeric(TextBox1) Then MsgBox "Et alors espèce de bachibouzouk ##ùù@^^^ on a dit des chiffres ici !!!", vbCritical, "lol" Exit Sub End If End Sub Voilà, comme çà on peut recenser ce fil aussi pour la Database XLD !! =>Numéro 28757 Bonne Soirée les Ami(e)s @+Thierry |
|
|
#9 (permalink) |
|
Guest
Messages: n/a
|
Tiens en complément...
Un petit fichier convertisseur EUR => FRF => EUR (vieux motard que jamais !!) Non, lol... c'est surtout répondre à la prochaine question de ce fil de discussion ... "Quand on tape le séparateur de Décimal sur le pavé numérique en Regianal Settings FR, la macro de @+Thierry ne marche pas..." lol Dans ce fichier démo il y a la solution ! ==>USF_Convert-EUR-FRF-INTL.zip (45k) Bye Bye @+Thierry |
|
|
#10 (permalink) |
|
Guest
Messages: n/a
|
re le forum
j'ai bien lu ta reponse et j'ai compris qu'avec mon niveau de competence actuel il ne vaut mieux pas que je modifie le nom des texbox pour le momment par contre je vais mettre en application ta solution pour mes entrée numerique merci de repondre aussi vite bonne soiree marmotte |
| Liens sociaux |
| Outils de la discussion | |
|
|