Fonctions qui ne s'effectuent pas dans un formulaire

Bonjour, je rencontre 2 petits problèmes dans mon formulaire.

-Le premier intervient lors de l'ajout d'un nouveau client ou d'un nouveau devis. J’aimerais que l'ajout ne s'effectue que si toutes les cases sont remplies. Et de plus que les champs soient nettoyés après l'ajout, j'ai l'impression que mes fonction : vérifierFRM et nettoyerFRM ne sont pas appelées lors de l'ajout alors que je les ai bien ajoutées dans le click du bouton "ajouter nouveau client".

-Le deuxième problème que je rencontre est lors de l'ajout d'un devis, j'aimerais qu'un numéro de devis soit incrémenté à chaque nouveau devis, j'ai essayé de mettre "i+1" dans le sub "remplissageHistorique", mais il semblerait que ce ne soit pas la bonne solution.

J'espère avoir été assez clair dans mes explications, merci par avance de votre aide !

25outil.xlsm (57.79 Ko)

Bonjour, çelà part un peu dans tous les sens vos codes.

Bouton Valider qui renvoi vers une autre macro....

Pourquoi ne pas mettre directement le code dans l'évènement bouton clic.

Pour vider un formulaire on ne s'amuse pas à vider toutes les textboxs et combobox une par une.

Un simple

unload.me
formulaire.show

suffit à réinitialiser votre formulaire.

Quand à la numérotation des devis ; vous devez récuperer ne numéro du dernier devis déjà enregistré ou le numéro de ligne qui vous permet d'ajouter un nouveau devis.

Tout d'abord merci de votre réponse, c'est vrai que mon code part un peu dans tous les sens j'ai encore du mal à gérer cela. Je pensais qu'il était plus simple de mettre les codes utilisés plusieurs fois dans un module et de simplement les appeler lorsqu'ils sont effectués.

Pour ce qui est du nettoyage du formulaire je voulais séparer la partie client de la partie devis et je pensais que pour cela il fallait supprimer le contenu de chaque textbox et combobox, c'est du moins ce que j'avais appris .

Comme vous avez pu le constater je débute encore en VBA et je n'arrive toujours pas à faire en sorte que le nettoyage de la partie client du formulaire n'impacte pas la partie devis. Pour le moment quand j'ajoute un nouveau devis ou client cela remet toutes mes cases en blanc, hors j'aimerais que celle en vert le reste. En plus de ça, j'aimerais que les données soient reportées uniquement si toutes les cases sont remplies ce qui pour le moment n'est pas le cas.

Bonsoir,

J'ai apporté quelques corrections et notamment l'ajout de 2 cadres respectivement pour les fiches clients et devis. Ce qui permet au niveau du code de distinguer les actions sur ces 2 parties.

ci-jointe nouvelle version

8outil1.xlsm (50.60 Ko)

NB: Il est préférable d'utiliser l'objet "Me" qui représente le formulaire, c'est plus standard au niveau du code en cas de modification du nom du formulaire.

Merci beaucoup de votre réponse j'ai encore du mal avec le "Me et je ne savais pas également qu'on pouvait utiliser des cadres, c'est génial pour cadrer plusieurs parties d'un formulaire.
J'ai un petit problème sur lequel j'essaie de me pencher ce matin. C'est simplement la couleur des textbox (vitesse, avance, Taux horaires, Pris lame, temps coupe, prix coupe, taux rentabilité et PV qui sont réinitialisées en vert et non en blanc lors de l'appui sur "nettoyer devis".

Encore merci !!!

Bonjour,

ci-jointe nouvelle version

8outil2.xlsm (52.00 Ko)

Encore merci de votre aide tout fonctionne parfaitement !

Bonne journée à vous

Rechercher des sujets similaires à "fonctions qui effectuent pas formulaire"