Microsoft 365 Ajouter mes références à ma facture automatiquement avec un bouton

Le M

XLDnaute Nouveau
Bonjour !

N'ayant presque aucunes connaissances en VBA, je sollicite votre aide. Je vous explique mon problème.
J'aimerais, dans ma feuille CATALOGUE, ajouter un bouton a la fin de chaque ligne de produit, me permettant d'ajouter directement la référence de mon produit dans ma feuille FACTURE, dans la colonne référence. J'aimerais en faisant cela que les références se mettent à la suite, même si dans mon catalogue elles ne se suivent pas.
Sachant que sur ce fichier test, je n'ai que 3/4 références et que j'en aurait probablement plus de 1000 en tout.

Toute aide sera appréciée.

Merci d'avance pour votre temps !🙏
 

Pièces jointes

  • TEST FACTURE.xlsm
    97.2 KB · Affichages: 18

fanch55

XLDnaute Barbatruc
Bonjour,
Mince, j'avais oublié de cliquer sur Répondre.
Quoi qu'il en soit, voici le fruit de ma réflexion ( ou travail ) :
- Création d'un champ nommé pour la Facture:
1685375279892.png



- Création d'une règle de validation dans Catalogue :
les REF déjà enregistrées sont affichées en police verte .
1685375415421.png



- Trap de l'événement SelectionChange en affichant un "Panier" dans la colonne REF si la REF peut être enregistrée dans la Facture :
1685375615688.png



-Tri des Réfs dans la Facture lors des ajouts avec détection de la saturation du nombre de lignes
1685376086973.png
 

Pièces jointes

  • TEST FACTURE F55.xlsm
    120.4 KB · Affichages: 6

Oneida

XLDnaute Impliqué
C'est exactement ce dont j'avais besoin! Pourrais-tu m'expliquer si tu as modifié quelque chose ? ou si c'est de base lorsque l'on met une liste déroulante ? Merci beaucoup ! :)
Re,
Ben oui, j'ai ajute du code dans le VBA de la feuille Catalogue et une procedure dans le Module Copy_ref
l'on met une liste déroulante
Non, vous derez virer vos listes deroulante car pas besoin
 

Le M

XLDnaute Nouveau
Bonjour,
Mince, j'avais oublié de cliquer sur Répondre.
Quoi qu'il en soit, voici le fruit de ma réflexion ( ou travail ) :
- Création d'un champ nommé pour la Facture:
Regarde la pièce jointe 1171124


- Création d'une règle de validation dans Catalogue :
les REF déjà enregistrées sont affichées en police verte .
Regarde la pièce jointe 1171125


- Trap de l'événement SelectionChange en affichant un "Panier" dans la colonne REF si la REF peut être enregistrée dans la Facture :
Regarde la pièce jointe 1171126


-Tri des Réfs dans la Facture lors des ajouts avec détection de la saturation du nombre de lignes
Regarde la pièce jointe 1171129
Bonjour !

Super c'est ce qu'il me fallait. J'abuse une dernière fois de ta gentillesse...
Serait-il possible de dupliquer ma page facture pour l'appeler devis et avoir exactement le même système ?
Et enfin je voudrais pouvoir créer un feuille archive des factures et archives des devis, qui se remplissent lorsque j'appuie sur mon bouton pour imprimer en pdf.
 

fanch55

XLDnaute Barbatruc
Serait-il possible de dupliquer ma page facture pour l'appeler devis et avoir exactement le même système ?
C'est à dire que Catalogue devrait remplir Devis et Facture simultanément ?
Je ne pense pas que ce soit une bonne idée car un devis n'est pas forcément suivi par une facture.
Le cheminement serait plutôt : Catalogue -- Panier --> Devis -- Panier --> Facture

Et enfin je voudrais pouvoir créer un feuille archive des factures et archives des devis, qui se remplissent lorsque j'appuie sur mon bouton pour imprimer en pdf.
C'est à dire :

Si je suis sur la feuille Devis et que je l'imprime,
les refs viennent mettre à jour un tableau Devis_Archive sur la feuille Devis_Archive ?

Si je suis sur la feuille Facture et que je l'imprime,
les refs viennent mettre à jour un tableau Facture_Archive sur la feuille Facture_Archive ?


j'appuie sur mon bouton pour imprimer en pdf
Toutes les impressions doivent plutôt être un export PDF ?
 

Le M

XLDnaute Nouveau
C'est à dire que Catalogue devrait remplir Devis et Facture simultanément ?
Je ne pense pas que ce soit une bonne idée car un devis n'est pas forcément suivi par une facture.
Le cheminement serait plutôt : Catalogue -- Panier --> Devis -- Panier --> Facture
Effectivement ce serait peut-être mieux, mais je n'avais aucune idée de comment faire...

C'est à dire :

Si je suis sur la feuille Devis et que je l'imprime,
les refs viennent mettre à jour un tableau Devis_Archive sur la feuille Devis_Archive ?

Si je suis sur la feuille Facture et que je l'imprime,
les refs viennent mettre à jour un tableau Facture_Archive sur la feuille Facture_Archive ?
Exactement, un tableau avec la ref / le nom du client / la date / le montant / et si possible le lien du fichier automatiquement

Toutes les impressions doivent plutôt être un export PDF ?
Exactement !
 

fanch55

XLDnaute Barbatruc
lorsque j'exporte ma facture/devis en pdf
Donc les impressions seront plutôt des archivages ...
Il faut revoir le cheminement :
  • On établit un devis : on intègre les différents produits.

  • On valide ce devis:
    Il est sauvegardé en Xlsx ( fichier excel ) puis exporté et stocké en PDF pour transfert .
    il est enregistré dans le tableau Devis_Archive avec les rubriques N°Devis / nom du client / date / montant et un lien vers le Pdf .
    La feuille devis est effacée .

  • Le devis est accepté, on l'indique dans Devis_Archive :
    On ouvre le devis Xlsx dans une feuille Facture .
    On change Devis en Facture et on attribue un N° de Facture en remplacement du N° de devis .

  • On valide cette facture:
    elle est exportée en Pdf
    elle est enregistrée dans le tableau Facture_Archive avec les rubriques N°Facture / nom du client / date / montant et un lien vers le Pdf .
    La feuille facture est effacée
Cela va prendre un certain temps à vous présenter un Classeur.
 

Le M

XLDnaute Nouveau
Donc les impressions seront plutôt des archivages ...
Il faut revoir le cheminement :
  • On établit un devis : on intègre les différents produits.

  • On valide ce devis:
    Il est sauvegardé en Xlsx ( fichier excel ) puis exporté et stocké en PDF pour transfert .
    il est enregistré dans le tableau Devis_Archive avec les rubriques N°Devis / nom du client / date / montant et un lien vers le Pdf .
    La feuille devis est effacée .

  • Le devis est accepté, on l'indique dans Devis_Archive :
    On ouvre le devis Xlsx dans une feuille Facture .
    On change Devis en Facture et on attribue un N° de Facture en remplacement du N° de devis .

  • On valide cette facture:
    elle est exportée en Pdf
    elle est enregistrée dans le tableau Facture_Archive avec les rubriques N°Facture / nom du client / date / montant et un lien vers le Pdf .
    La feuille facture est effacée
Cela va prendre un certain temps à vous présenter un Classeur.
Désolé j'avais pas été clair du tout... lorsque vous dites que la feuille facture est effacée, cela veut dire que les infos dans ma factures sont effacées et que ma facture restera mais vide sans les infos des clients etc ?

Cela va prendre un certain temps à vous présenter un Classeur.
Il 'y a aucun problème !!! Merci beaucoup pour votre aide !
 

fanch55

XLDnaute Barbatruc
Bonsoir,
Pour pouvoir faire fonctionner le classeur ci-Joint,
Vous devez créer un sous-dossier "Devis" et un un sous-dossier "Factures" dans le dossier où vous allez mettre le classeur ou sinon, modifiez les lignes
  • ThisWorkbook.Names("Folder_Factures").Value = ThisWorkbook.Path & "\Factures\"
    dans le module1, subroutine Valider_Facture
  • ThisWorkbook.Names("Folder_Devis").Value = ThisWorkbook.Path & "\Devis\"
    dans la feuille Devis, subroutine Valider_Devis
Cinématique :
  • Aller dans la feuille "Catalogue",
    cliquer sur une cellule Réf puis sur le panier affiché dans celle-ci .
    Indiquer la quantité désirée .
    Continuer ainsi pour toutes les références à ajouter .

  • Aller dans la feuille "Devis",
    le n° de devis est calculé d'après le max+1 de ceux déjà enregistrés .
    Choisir le nom du Client,
    l'icône de validation devrait alors apparaitre .

  • Valider en cliquant sur l’icône:
    le devis est sauvegardé en Pdf et en Xlsx dans le sous-dossier Devis
    et est enregistré dans la partie devis de la feuille "Journal"

  • En cliquant sur le n° de devis du Journal,
    on affiche la version Pdf de celui-ci ( consultation ) .

  • Si on clique sur la cellule Facture et que celle-ci est vide,
    un symbole "monnaie" est affiché.

  • En cliquant sur ce symbole,
    le fichier Xlsx du devis est dupliqué dans une feuille Facture avec un numéro de Facture calculé d'après le max+1 de ceux déjà enregistrés .

  • Si on clique sur l’icône de validation de la facture ( on peut éventuellement modifier les éléments - ce qui ne devrait pas se produire ) :
    la feuille facture est sauvegardée en Pdf,
    est enregistrée dans le Journal dans la partie Facture,
    le fichier Xlsx du Devis est supprimé,
    la feuille Devis est "vidée" .

  • En cliquant sur le n° de facture du Journal,
    on affiche la version Pdf de celle-ci ( consultation ) .
Comme vous pouvez le voir, ce que vous demandez n'est pas anodin.
Mon intervention s’arrêtera là, c'est un exemple que vous devrez amender.
 

Pièces jointes

  • TEST FACTURE F55.xlsm
    106 KB · Affichages: 14
Dernière édition:

Le M

XLDnaute Nouveau
Bonsoir,
Pour pouvoir faire fonctionner le classeur ci-Joint,
Vous devez créer un sous-dossier "Devis" et un un sous-dossier "Factures" dans le dossier où vous allez mettre le classeur ou sinon, modifiez les lignes
  • ThisWorkbook.Names("Folder_Factures").Value = ThisWorkbook.Path & "\Factures\"
    dans le module1, subroutine Valider_Facture
  • ThisWorkbook.Names("Folder_Devis").Value = ThisWorkbook.Path & "\Devis\"
    dans la feuille Devis, subroutine Valider_Devis
Cinématique :
  • Aller dans la feuille "Catalogue",
    cliquer sur une cellule Réf puis sur le panier affiché dans celle-ci .
    Indiquer la quantité désirée .
    Continuer ainsi pour toutes les références à ajouter .

  • Aller dans la feuille "Devis",
    le n° de devis est calculé d'après le max+1 de ceux déjà enregistrés .
    Choisir le nom du Client,
    l'icône de validation devrait alors apparaitre .

  • Valider en cliquant sur l’icône:
    le devis est sauvegardé en Pdf et en Xlsx dans le sous-dossier Devis
    et est enregistré dans la partie devis de la feuille "Journal"

  • En cliquant sur le n° de devis du Journal,
    on affiche la version Pdf de celui-ci ( consultation ) .

  • Si on clique sur la cellule Facture et que celle-ci est vide,
    un symbole "monnaie" est affiché.

  • En cliquant sur ce symbole,
    le fichier Xlsx du devis est dupliqué dans une feuille Facture avec un numéro de Facture calculé d'après le max+1 de ceux déjà enregistrés .

  • Si on clique sur l’icône de validation de la facture ( on peut éventuellement modifier les éléments - ce qui ne devrait pas se produire ) :
    la feuille facture est sauvegardée en Pdf,
    est enregistrée dans le Journal dans la partie Facture,
    le fichier Xlsx du Devis est supprimé,
    la feuille Devis est "vidée" .

  • En cliquant sur le n° de facture du Journal,
    on affiche la version Pdf de celle-ci ( consultation ) .
Comme vous pouvez le voir, ce que vous demandez n'est pas anodin.
Mon intervention s’arrêtera là, c'est un exemple que vous devrez amender.
Bonjour,
C'est parfait.
Je vous remercie grandement pour votre aide très précieuse, les explications et merci pour tout le temps que vous m'avez accordé !
 

Discussions similaires

Statistiques des forums

Discussions
315 099
Messages
2 116 205
Membres
112 687
dernier inscrit
snexedwards