Encoder un tableau au travers d'un formulaire
Bonjour à tous,
Ce que je cherche à faire est assez basique, mais ne maîtrisant pas VBA, c'est un casse-tête pour moi. J'ai créé un Userform 1 qui doit servir à encoder des informations dans une des feuilles de mon classeur (disons la feuille 2) sur une simple colonne. Ce sont les données brutes qui nous intéressent. Le formulaire est juste plus user friendly. Les données peuvent être transposées comme ceci : textbox 1 = A1 ; textbox2 = A2 ; textbox3 = A3 ... La particularité de ce fichier excel est qu'il ne doit servir que pour un encodage (donc une colonne de données). Eventuellement, l'utilisateur est amené à rouvrir le fichier pour le compléter ou le modifier toujours à travers le formulaire.
Il faudrait donc :
- Ouverture automatique du formulaire à l'ouverture du fichier
- TextBoxes du formulaire préremplies par le contenu des cellules liées en cas d'édition du fichier
- Est-il possible que la hauteur les Textboxes s'adapte à la longueur du texte ? Ou du moins, qu'une scrollbar apparaisse ?
- Un bouton Save/Quit qui ferme le formulaire, sauvegarde les données et ferme le fichier
A noter que le formulaire est multi-page, mais ne contient pour l'instant de textbox que sur la première page. J'ignore si les règles en VBA peuvent être créées en amont des objets qu'elles vont gérer ou s'il faut que tout soit fixe et définitif pour appliquer le VBA en "couche de finition".
Merci d'avance pour toute info utile et autres petits coups de pouce.
Je suis de retour dans la soirée sur le forum pour toute précision utile.
Bien à vous tous,
Guildo
Bonjour Gmb et merci pour ton aide.
C'est tout à fait ce que je recherchais. Cependant, j'ai 3 questions :
- Actuellement, le comportement des textboxes est qu'elles s'allongent quand le contenu devient plus long que la place prévue. Mais cela a pour effet de rogner sur une textbox disposée à côté. Est-il possible que les textboxes affichent de base 5 lignes (exemple) et qu'une scrollbar apparaisse pour permettre de naviguer dedans si le contenu dépasse les 5 lignes ?
- Comment activer la scrollbar du userform1 située sur toute la hauteur droite ?
- Devrai-je adapter ce code lorsque j'aurai ajouté des textboxes sur les autres pages de mon userform1 ?
Encore merci.
Bonjour
Tu écris :
Est-il possible que les textboxes affichent de base 5 lignes (exemple) et qu'une scrollbar…
Il est possible de définir une largeur fixe des Textbox dans l’userform.
Cela se fait en mettant la valeur de sa propriété « AutoSize » à False,.
Puis il faut permettre un retour à la ligne automatique si la largeur est insuffisante pour tout contenir. Cela se fait en modifiant la propriété ‘’Défilement – Scrollbars’’
On peut alors choisir un déplacement avec les flèches du clavier, avec les flèches du Textbox (clic avec la souris) ou les 2.
Comment activer la scrollbar du userform1 située sur toute la hauteur droite ?
Là, je ne sais pas : je n’en ai jamais eu besoin.
Devrai-je adapter ce code lorsque j'aurai ajouté des textboxes sur les autres pages de mon userform1
Non, à condition de bien prendre soin que les numéros de colonnes correspondent aux numéros des nouveaux Texbox.
Bye !
Super ! Merci pour les précisions !
++