Formulaire VBA

Bonsoir tout le monde.

Alors voila, je suis en train de créer un rapport sous excel.

Une première feuille "canevas" ou l'on rentre et coche les différents renseignements qui vont se mettre dans une 2ème feuille "Rapport" qui lui est destiné au clients avec des jolies phrases, une mise en page,...

Initialement, je comptais remplir des cases dans "le canevas" avec des renvois vers le rapport.

Finalement, je trouve le formulaire plus "convivial" à utiliser.

Seulement voila, je sèche complet. j'ai découvert ce langage uniquement ce week-end donc j'y connais pas grand chose.

je joints un fichier avec explication de ce que je voudrais faire.

Si vous pouviez me donner des piste pour améliorer mon code.

Merci.

30test1.xlsm (26.69 Ko)

Bonjour

Un essai à tester. Te convient-il ?

Bye !

34test1-v1.xlsm (25.65 Ko)

C'est un peu plus simple que ce que j'avais écrit...

Petite question, je voudrais que quand je rappelle les valeurs rentrées s'affichent.

par exemple si j'ai fait une erreur dans un champ, pour ne pas avoir à tout retaper.

Bonjour

Nouvel essai.

Bye !

15test1-v2.xlsm (26.93 Ko)

Super !

Merci beaucoup

un truc que je ne comprends pas dans le code :

TextBox3 = Left(Sheets("Rapport").Range("A29"), 5)

TextBox4 = Mid(Sheets("Rapport").Range("A29"), 7, 50)

A quoi correspondent les "5", "7" et "50" en fin de ligne ?


J'ai trouvé ! ou presque...

le 5, c'est les 5 chiffres du code postal

le 7, c'est pour la date

par contre, le 50.... j'sais pas.

TextBox3 = Left(Sheets("Rapport").Range("A29"), 5)

On doit mettre dans TextBox3 le code postal. Celui-ci est contenu dans les 5 premiers caractères de gauche qu’on trouve dans la cellule A29 de la feuille ‘’Rapport’’

TextBox4 = Mid(Sheets("Rapport").Range("A29"), 7, 50)

On doit mettre dans TextBox4 le nom de la ville.

Celui-ci se trouve dans la cellule A29 de la feuille ‘’Rapport’’, à partir du 7° caractère et en prenant tous les caractères, du 7° jusqu’à la fin.

Pour faire bonne mesure, j’en ai pris 50, supposant qu’il y en aura moins.

J’aurais pu mettre 100 ou 200… Mais en toute rigueur, il aurait fallu écrire :

TextBox4 = Mid(Sheets("Rapport").Range("A29"), 7, Len(Sheets("Rapport").Range("A29")) - 6)

Avec

Len(Sheets("Rapport").Range("A29")) qui donne le nombre total de caractères qu’il y a dans la cellule,

valeur à laquelle on ôte les 6 premiers (le code postal et l’espace qui suit) pour avoir le nombre de caractères à prendre à partir du 7°

OK ?

Merci pour ces explications claires et limpides

Bon j'ai encore des petits trucs qui me chagrine, que je veux améliorer mais je veux essayer à m'en dépatouiller seul.

Je reviens vers vous dès que je bloque... peut être plus vite que prévu...

Bonsoir,

Voila, j'ai apporté quelques améliorations à mon formulaire.

Je vous joint le fichier

Y'a peut être une façon plus simple d'écrire certaines fonctions... mais ça fonctionne très bien comme ça !

Je pense que je vais buter sur un autre formulaire avec liste déroulante... je reviens bientôt vous voir

Encore merci pour cette aide !

20test1-v2-1.xlsm (70.82 Ko)

Bonjour,

Voila, je reviens solliciter votre aide.

J'ai créé un formulaire avec des combobox.

Ces combo box devront venir m'alimenter un tout petit tableau en plein milieu de ma page (je ne sait pas si c'est vraiment possible),

avec possibilité de supprimer un enregistrement.

Voilà en pièce jointe, ce que j'ai réussi à écrire.

Bonjour

En retour avec quelques ajouts.

Bye !

Merci pour ce travail.

Seulement, à part le bouton "quitter", chez moi, rien ne fonctionne

Steph47 a écrit :

à part le bouton "quitter", chez moi, rien ne fonctionne

Comme c'est curieux .... Je n'ai vu ni mis nulle part de bouton "Quitter" !

As-tu essayé de commencer par faire un choix dans la liste déroulante "Emplacements" ?

C'est par là que tout commence !

Bye !

gmb a écrit :
Steph47 a écrit :

à part le bouton "quitter", chez moi, rien ne fonctionne

Comme c'est curieux .... Je n'ai vu ni mis nulle part de bouton "Quitter" !

Bye !

Autant pour moi, il s'agit du bouton "fermer", (mais je pense que tu avais compris )

gmb a écrit :
Steph47 a écrit :

à part le bouton "quitter", chez moi, rien ne fonctionne

As-tu essayé de commencer par faire un choix dans la liste déroulante "Emplacements" ?

C'est par là que tout commence !

Bye !

Oui, en fait j'ai tout essayé

* sélectionné une liste dans la liste "emplacement" pour la modifier, la supprimer --> dans les 2 cas : erreur !

* créer une nouvelle ligne dans "emplacement" et l'ajouter --> encore erreur !

Bonjour

Steph47 a écrit :

en fait j'ai tout essayé

Alors, je ne vois pas d'où cela vient.

Pour corriger un bug, il faudrait que je puisse le reproduire.

Or, ce n'est pas le cas : j'ai retéléchargé le fichier que je t'ai retourné et tout fonctionne normalement.

Désolé !

Bye !

Voila le message d'erreur que j'ai quand je veux supprimer une ligne.

J'ai le même quand je veux faire modifier (avec un renvoi sur le code du bouton "modifier", bien sûr !


Et là, ce que j'obtiens quand je veux ajouter un enregistrement

capture capture

Nouvel essai à tester.

Bye !

Merci merci !!!

Ca marche Nickel !

Par contre, j'aurais une dernière requête...

En fait, mon tableau va de A48 à H55, mais après la ligne 55, j'ai la suite de mon document.

J'aurais voulu (mais je sais pas du tout si c'est possible) que tout le blabla éventuel situé après la ligne 55 ne soit pas repris par la combobox1.

Nouvelle version à tester.

Bye !

Bonsoir,

A priori ça marche. A tester en l'insérant à mon doc final.

Merci !

Bonsoir,

J'ai un petit souci avec un formulaire contenant des checkbox.

Même si ça fonctionne (de façon plus ou moins aléatoire), je pense que ma façon de l'écrire n'est peut être pas la meilleure...

Ca merde quand je veux multiplier les choix; choix 1 + choix 2, je n'arrive pas à obtenir ce que je souhaite. (A voir directement sur l'userform, c'est plus simple à comprendre).

15ecl.xlsm (23.77 Ko)
Rechercher des sujets similaires à "formulaire vba"