Projet devis

SALAH

XLDnaute Occasionnel
Bonjour le forum,

Je me permets de me soumettre à vous pour une aide assez importante j ' ai beau chercher et essayer de comprendre le vba par rapport à un projet.
J' ai essayé plusieurs éléments de constituer un code pour établir mon projet mais je freine énormément
Dans mon formulaire j' essaye de mettre des croix sur le formulaire pour les reporter sur la base, faire le traitement des calculs au niveau des choix, gérer un numéro de devis à partir d' un numéro de devis déjà donné.
Par la suite créer un devis et une facture pour envoi en mail.
Je joins un fichier pour mieux que vous compreniez mon souci.
Je vous remercie pour toute votre aide et votre patience
Merci
 

Pièces jointes

  • Projet_Devis.xlsm
    55.2 KB · Affichages: 55

bbb38

XLDnaute Accro
Re : Projet devis

Bonjour SALAH, le forum,
Peut-on modifier la feuille « Contacts » (voir fichier ci-joint) ?
Cordialement,
Bernard
 

Pièces jointes

  • Salah_Projet_Devis.xlsm
    64.1 KB · Affichages: 48
  • Salah_Projet_Devis.xlsm
    64.1 KB · Affichages: 54
  • Salah_Projet_Devis.xlsm
    64.1 KB · Affichages: 54

SALAH

XLDnaute Occasionnel
Re : Projet devis

Bonjour le forum, bonjour Bernard

Bien sûr Bernard tu peux modifier, l essentiel c est d avoir tous les éléments
je te renvoie le fichier avec une petite modification sur l'interface

Merci pour ton aide
 

Pièces jointes

  • Salah_Projet_Devis.xlsm
    54.1 KB · Affichages: 35
  • Salah_Projet_Devis.xlsm
    54.1 KB · Affichages: 39
  • Salah_Projet_Devis.xlsm
    54.1 KB · Affichages: 38

Robert

XLDnaute Barbatruc
Repose en paix
Re : Projet devis

Bonjour Salah, Bernard (Salah Bernard ! C'est un coup de théâtre !), bonjour le forum,

J'ai repris la présentation de Bernard (très fonctionnelle) et modifié complètement l'UserForm comme si c'était pour moi...
Il reste encore pas mal de choses à modifier mais je voudrais d'abord savoir si ça te convient. Code commenté avec des questions et explications dans les commentaires...
Le fichier :
 

Pièces jointes

  • Salah_v01.xlsm
    61.4 KB · Affichages: 53
  • Salah_v01.xlsm
    61.4 KB · Affichages: 50
  • Salah_v01.xlsm
    61.4 KB · Affichages: 46

SALAH

XLDnaute Occasionnel
Re : Projet devis

Bonjour le Forum, Bernard, Robert

Merci Robert pour ton aide aussi tu m' avais déjà aidé pour un autre sujet.
Voilà j' ai rajouté quelques boutons mais je n'ai pas touché au code et de plus être laisse moi te remercier pour tous les commentaires bien définis
Pas mal le bouton ajoute qui change d' apparence et devient modifié
La date du premier contact est la date du jour de la création du devis.
Y a t il un moyen de mettre en automatique la partie informations départ en reprenant juste "l' adresse et le complément" sa évite de les retaper?
Y a t il aussi un moyen de rechercher le client soit en tapant le nom du client ou le N° du devis ?
Pour finir la frame 3 : serait il possible de taper le ttc avec un accompte de 30 % et que le calcul se fasse.
Pour ce qui est des options de choix c' est très bien ainsi
C ' est déjà beaucoup de choses à faire mais vous m' avez déjà bien avancé et merci Robert pour tes commentaires.

Merci
 

Pièces jointes

  • Salah_v01.xlsm
    540.8 KB · Affichages: 39
  • Salah_v01.xlsm
    540.8 KB · Affichages: 50
  • Salah_v01.xlsm
    540.8 KB · Affichages: 51

Robert

XLDnaute Barbatruc
Repose en paix
Re : Projet devis

Bonsoir le fil, bonsoir le forum,

En pièce jointe la version 02. Il ne manque plus qu'à définir les champs obligatoires, à définir ce que l'on fait des valeurs de la Frame3 et à rajouter le code aux derniers boutons...
J'ai utilisé 3 modules de classes pour éviter d'écrire le même code pour plusieurs contrôles.
• Un pour les textboxes qui n'acceptent que des nombre (code postal, téléphone et volume)
• Un pour le calcul automatique des TVA, Prix TTC et Accompte quel que soit l'option
• Un autre pour les bouton d'option de la Formule
Le fichier :
 

Pièces jointes

  • Salah_v02.xlsm
    574.3 KB · Affichages: 59
  • Salah_v02.xlsm
    574.3 KB · Affichages: 44
  • Salah_v02.xlsm
    574.3 KB · Affichages: 40

SALAH

XLDnaute Occasionnel
Re : Projet devis

Bonjour Le Forum, Bonjour Robert

La recherche par noms est très bien
Les champs des calculs (HT-Accompte-TVA-TTC) trés Bien, peut on également commencé par saisir le TTC ?
Pour les formules j ai rajouté dans le tableau "Gestion des contacts" les 3 formules pour (oui et non) + Tarif TTC en fonction de la saisie du formulaire.
Y a t il moyen de rajouter dans la rubrique téléphone le 06 ou 01 en automatique ?
Par la suite il restera à générer un devis et une facture pour envoi chez le client

Merci pour tout Robert tu es mon sauveur
 

Pièces jointes

  • Salah_v02.xlsm
    567.2 KB · Affichages: 42
  • Salah_v02.xlsm
    567.2 KB · Affichages: 46
  • Salah_v02.xlsm
    567.2 KB · Affichages: 47
Dernière édition:

Robert

XLDnaute Barbatruc
Repose en paix
Re : Projet devis

Bonsoir le fil, bonsoir le forum,

Commencer par le TTC c'est possible mais définitif. C'est à dire soit tu tapes le TTC soit le HT mais coder que pour ça marche pour les deux va être compliqué. Dis-moi ce que tu préfères.
Pour le 06 par défaut, que feras-tu lorsque le client a un 07 ?
Tu ne m'as pas dit quel étaient les champs obligatoires et, par déduction, ceux qui seront facultatifs...
 

SALAH

XLDnaute Occasionnel
Re : Projet devis

Bonjour le Forum, Robert

Pour le calcul je prefere saisir le TTC
Pour le numéro 06 ou 07 : en automatique le "06" et si c est un 07 y a t il un moyen de saisir par dessus ?
si ce n est pas possible alors on laisse comme çà
Pour les champs obligatoires ou facultatifs je n ai pas compris ta question

A+
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Projet devis

Bonjour le fil, bonjour le forum,

Dans ton UserForm, chaque textbox, combobox, bouton d'option est un champ à remplir par l'utilisateur. Certains d'entre eux sont facultatifs (comme les compléments d'adresse par exemple) mais j'aimerais que tu me dises lesquels sont obligatoires. Comme ça je ferai en sorte qu'un message s'affiche si l'utilisateur a omis de le remplir. Les données se seront envoyées au tableau que quand tous les champs obligatoires seront remplis...
 

SALAH

XLDnaute Occasionnel
Re : Projet devis

Bonjour le Forum, Robert

Ok excuse moi pour l' icompréhension, tous les champs sont obligatoires sauf les champs compléments
Peut on rajouter un nouveau champs : téléphone fixe ?
Le traitement des calculs soit se faire par la saisie TTC

Merci pour tout

A+
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Projet devis

Bonjour le fil, bonjour le forum,

En pièce jointe la version3 à tester (je ne l'ai pas fais beaucoup...)
Pas sûr que l'email doive être un champ obligatoire...
Le fichier :
 

Pièces jointes

  • Salah_v03.xlsm
    567.4 KB · Affichages: 45
  • Salah_v03.xlsm
    567.4 KB · Affichages: 47
  • Salah_v03.xlsm
    567.4 KB · Affichages: 40

SALAH

XLDnaute Occasionnel
Re : Projet devis

Bonjour Le forum, bonjour Robert

Malgré que tu n' as pas fait de test cela marche à merveille
Par contre j' ai oublié de rajouter les champs "code postal et Ville" dans les informations de départ et d' arrivée
(en automatique pour les infos départ) . Je t 'ai aussi rajouté les maquettes "devis et facture"

Merci pour ta patience tu m enlèves une épine du pied

A+
 

Pièces jointes

  • Salah_v03.xlsm
    585 KB · Affichages: 38
  • Salah_v03.xlsm
    585 KB · Affichages: 43
  • Salah_v03.xlsm
    585 KB · Affichages: 47

Robert

XLDnaute Barbatruc
Repose en paix
Re : Projet devis

Bonjour le fil, bonjour le forum,

Voici la version 04 qui sera ma dernière car là je suis carrément en train de faire le projet pour toi... Ça ne m'a pas dérangé, remarque, je prend toujours du plaisir à travailler avec des USerForm. Mais je te laisse le soin de finir car ça me prend trop de temps...
Pour Générer un devis j'ai utilisé des plages nommées qui portaient le même nom que le contrôle qui lui envoyait la valeur. Après cette simple boucle a fait le reste :
Code:
For Each CT In Me.Controls 'boucle sur tous les contrôles de L'UserForm2
    If TypeOf CT Is MSForms.ComboBox Or TypeOf CT Is MSForms.TextBox Then 'condition : si les contrôle est une combobox ou une textbox
        On Error Resume Next 'gestion des erreurs (en cas d'erreur passa à la ligne suivante)
        D.Range(CT.Name).Value = CT.Value 'envoie dans la plage nommée du même nom que le nom du contrôle de l'onglet D, la valeur du contrôle
        If Err <> 0 Then Err.Clear 'si une erreur a été généré, supprime l'erreur
    End If 'fin de la condition
    If TypeOf CT Is MSForms.OptionButton Then 'condition : si le contrôle est un bouton d'option
        'envoie dans la plage nommée du même nom que le nom du contrôle (avec un "_" devant) de l'onglet D, "X" si le contrôle est allumé = [Vrai] ou rien si il est eteint = [Faux]
        If CT.Value = True Then D.Range("_" & CT.Name).Value = "X" Else D.Range("_" & CT.Name).Value = ""
    End If 'fin de la condition
Next CT 'prochaine contrôle de la boucle
Une fois la Facture générée le reste devrait aller vite...
 

Pièces jointes

  • Salah_v04.xlsm
    599.6 KB · Affichages: 72

SALAH

XLDnaute Occasionnel
Re : Projet devis

Bonjour le Forum, Robert

Il est vrai que tu m' as beaucoup aidé et que tu as fais le plus grand travail, je vais tâcher à mon tour de finaliser le projet et de comprendre tous les commentaires de ton code (ce qui n' est pas évident pour moi)

Je te remercie beaucoup pour ta gentillesse, ta patience et ton acharnement pour m' avoir aidé

Merci à tous
 

Discussions similaires

Réponses
8
Affichages
458
Réponses
15
Affichages
564

Statistiques des forums

Discussions
312 213
Messages
2 086 307
Membres
103 174
dernier inscrit
OBUTT