Archiver et nouvelle facture suivi de stock qui ne se fait pas
Bonjour à tous,
je suis nouveau sur le forum (et debutant excel VBA) et j'espere être à la bonne adresse :)
Mon fichier excel téléchargé d'internet "test2.xlsm" se compose de 4 feuilles,
- facture
- historique_facture
- stock (je l'ai ajouté moi)
- paramètre
il y a déjà un macro "Archiver et nouvelle facture" fonctionne très bien mais dans ma feuille de "stock" les données sont à chaque fois écrasés. voir dans le module svp.
Pour chaque facture créée est-il possible d'avoir aussi les stocks. Ds la feuille de stock il y a 5 colonnes,
| Numéro de Facture | Date d'émission | Article | Référence Produit | Quantité |
Comment puis-je à chaque fois garder mes informations de produite vendu afin de pouvoir gérer mon stock.
Des nouveaux idées de gestion de stock sont le bienvenue
Merci d'avance
Cordialement,
Bonjour
Tu crée une variable ligne que tu n'utilises pas... d'où l'écrasement...
Ci joint ma solution
si ca peut te donner des idées
A+ François
Bonjour François,
Je te remercie pour ton aide précieuse.
Petit incident avec la facture quand je choisi la référence produit, l'article ne s'affiche plus ( msg d'erreur: il ne peut pas afficher les colonnes associées) et le numéro de facture ne s'incrémente plus aussi donc il reste toujours au même numéro de facture.
Merci
Bonjour François,
Je vous remercie infiniment.
Bàv.
Rebonjour,
Voilà j'ai oublié de vous demander pour le calcul stock (la formule ) pour tous ce qui a été utilisé comment les déduire du stock. en faisant le calcule général depuis le début cad il y a plusieurs produit (article) identique comment prendre leur totalité et le déduire
Merci d'avance.
Cher François,
Je vous remercie infiniment.
Cordialement.
Bonsoir,
1) Est ce que la page "stock" pourrais être vertical avec une menu déroulante pour les article ou les références,
au lieu de horizontale (plusieurs article possible il sera difficile)
2) Est-ce que cette menu déroulante pourrais être avec texte semi-automatique comme dans "recherche de google".
Merci
Bonsoir François,
1) Est-ce que la page "Stock" pourrais être vertical avec une menu déroulante pour les articles ou les références,
au lieu de horizontale (plusieurs article possible il sera difficile)
2) Est-ce que cette menu déroulante pourrais être avec semi-automatique comme dans "recherche de google".
3)Quand j'ajouterai un nouveau article (produit) comment faire pour qu'il s'ajout automatiquement sur la liste de stock.
Mercid'avance.
Bonjour
J'ai modifié ton fichier
la page stock et devenu vendu
les articles sont regroupés sur la page Gestion_stock (si tu ajoutes un article sur cette feuille tu la retrouveras partout)
Par contre je n'ai pas compris ton histoire de menu déroulant?
A+ François
Bonsoir François,
Je te remercie pour ta réponse j'ai réussi à faire certaine choses. Sauf la liste déroulante. ( soit liste déroulante "active x" soit menu déroulante via "validation de donnée" ) est ce que un de ces deux peux être en semi-automatique.
Je t'envois le macro que j'ai essayé de faire sur mon projet mais son ça ne fonctionne pas .me donne erreur
Pourrais tu jeter un coup d'œil stp. Voir l'erreur du VBA
c'est toujours le même scénario sur ton fichier tout est impec mais sur le mien rien qui se passe quand j'exécute le macro archiver facture le voici :
exécution de l'archivage facture se fait sans problème mais niveau stock rien se passe.
Merci
Bonjour
Ou on a pas le même fichier ou....
Sub ArchiverFacture()
Dim i As Long, Ligne As Long
Dim Nomfichier As String, Chemin As String
Nomfichier = Format(Now() - 1, " dd-mm-yyyy") & Format(Time, " hh-mm")
Chemin = ActiveWorkbook.Path 'à supprimer si suivant correct
'Chemin = "C:\Users\FORCE TB\Desktop\Facture_archive_Coco\Facture"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Chemin & "\" & Nomfichier & ".pdf"
Ligne = Sheets("Historique_Facture").Range("A" & Rows.Count).End(xlUp).Row + 1
' Sheets("Historique_Facture").Range("A" & Ligne).Value = Sheets("FACTURE").Range("B6").Value 'il n'y a rien
' Sheets("Historique_Facture").Range("B" & Ligne).Value = Sheets("FACTURE").Range("B8").Value 'il n'y a rien
' Sheets("Historique_Facture").Range("C" & Ligne).Value = Sheets("FACTURE").Range("B11").Value 'il n'y a rien
' Sheets("Historique_Facture").Range("D" & Ligne).Value = Sheets("FACTURE").Range("D7:E7:F7").Value 'ça risque pas de fonctionner
' Sheets("Historique_Facture").Range("E" & Ligne).Value = Sheets("FACTURE").Range("D8:E8:F8").Value
' Sheets("Historique_Facture").Range("F" & Ligne).Value = Sheets("FACTURE").Range("D9:E9:F9").Value 'il n'y a rien ligne 9
' Sheets("Historique_Facture").Range("G" & Ligne).Value = Sheets("FACTURE").Range("D10:E10:F10").Value 'il n'y a rien ligne 10
' Sheets("Historique_Facture").Range("H" & Ligne).Value = Sheets("FACTURE").Range("D11").Value 'A contrôler????
' Sheets("Historique_Facture").Range("I" & Ligne).Value = Sheets("FACTURE").Range("F36").Value 'il n'y a rien en f36
' Sheets("Historique_Facture").Range("J" & Ligne).Value = Sheets("FACTURE").Range("F41").Value 'il n'y a rien en f41
' Sheets("Historique_Facture").Range("K" & Ligne).Value = Sheets("FACTURE").Range("B8").Value 'il n'y a rien en b8
'Sheets("Genel").Range("B2") = Sheets("Genel").Range("B2") + 1 '********************* je n'ai pas cette feuille *****************
' Sheets("Genel").Range("C2") = Sheets("Genel").Range("C2") + 1
Sheets("Facture").Range("C12:C27").ClearContents
Sheets("Facture").Range("E12:E27").ClearContents
Sheets("Facture").Range("E5:G5").ClearContents
' Chemin = "C:\Users\FORCE TB\Desktop\Facture_archive_Coco\Facture" 'déjà déclaré
'ChDir Chemin
Chemin = Chemin & "\"
' Nomfichier = Format(Now() - 1, " dd-mm-yyyy") & Format(Time, " hh-mm") & ".pdf"'déjà déclaré
Ligne = Sheets("Historique_Facture").Columns(1).Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious, LookIn:=xlValues).Row
With Sheets("Historique_Facture")
.Hyperlinks.Add .Range("K" & Ligne), Chemin & Nomfichier 'pourquoi en K?
Sheets("Facture").Select
End With
MsgBox "FICHIER ENREGISTRE," & vbCrLf & "VEUILLEZ VERIFIER VOTRE DOSSIER SVP", vbInformation + vbOKOnly, "INFORMATION"
With Sheets("Vendu")
Ligne = .Range("C2").End(xlDown).Row + 1
.Range("A" & Ligne).Value = Sheets("FACTURE").Range("B8").Value 'il n'y a rien
.Range("B" & Ligne).Value = Sheets("FACTURE").Range("B11").Value 'il n'y a rien
For i = 14 To 28
If Sheets("Facture").Range("C" & i).Value = "" Then Exit For
.Range("C" & Ligne).Value = Sheets("FACTURE").Range("C" & i).Value
.Range("D" & Ligne).Value = Sheets("FACTURE").Range("D" & i).Value
.Range("E" & Ligne).Value = Sheets("FACTURE").Range("E" & i).Value
Ligne = Ligne + 1
Next
End With
With Application
.ScreenUpdating = True '******************** où sont ils mis à false *********************
.EnableEvents = True
End With
End SubPour tester une macro: mettre ton curseur dans la macro et progresser pas à pas en appuyant sur f8 et contrôler...
A+ François
Bonsoir François,
J'ai le message d'erreur à la ligne 50 (Li50) au passage Li 51 MAIS très intéressant tout se déroulent normal
il incrémente la Facture et l' archive bien de plus le lien du PDF dans la colonne K qui est bien enregistré SAUF la feuille de Stock qui est vide
et quand j'avance avec "F8"
(ligne= 1048577)
Sub ArchiverFacture()
Dim i As Long, Ligne As Long
Dim Nomfichier As String, Chemin As String
Nomfichier = Format(Now() - 1, " dd-mm-yyyy") & Format(Time, " hh-mm")
Chemin = "C:\Users\FORCE TB\Desktop\Facture_archive_Coco\Facture"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Chemin & Nomfichier & ".pdf"
Ligne = Sheets("Historique_Facture").Range("A" & Rows.Count).End(xlUp).Row + 1
Sheets("Historique_Facture").Range("A" & Ligne).Value = Sheets("FACTURE").Range("B6").Value
Sheets("Historique_Facture").Range("B" & Ligne).Value = Sheets("FACTURE").Range("B8").Value
Sheets("Historique_Facture").Range("C" & Ligne).Value = Sheets("FACTURE").Range("B11").Value
Sheets("Historique_Facture").Range("D" & Ligne).Value = Sheets("FACTURE").Range("D7:E7:F7").Value
Sheets("Historique_Facture").Range("E" & Ligne).Value = Sheets("FACTURE").Range("D8:E8:F8").Value
Sheets("Historique_Facture").Range("F" & Ligne).Value = Sheets("FACTURE").Range("D9:E9:F9").Value
Sheets("Historique_Facture").Range("G" & Ligne).Value = Sheets("FACTURE").Range("D10:E10:F10").Value
Sheets("Historique_Facture").Range("H" & Ligne).Value = Sheets("FACTURE").Range("D11").Value
Sheets("Historique_Facture").Range("I" & Ligne).Value = Sheets("FACTURE").Range("F36").Value
Sheets("Historique_Facture").Range("J" & Ligne).Value = Sheets("FACTURE").Range("F41").Value
Sheets("Historique_Facture").Range("K" & Ligne).Value = Sheets("FACTURE").Range("B8").Value
Sheets("Genel").Range("B2") = Sheets("Genel").Range("B2") + 1
Sheets("Genel").Range("C2") = Sheets("Genel").Range("C2") + 1
ActiveWindow.SmallScroll Down:=2
Range("D7:F7,D7:F7,B14:B28,D14:D28").Select
Range("D14").Activate
ActiveWindow.SmallScroll Down:=15
Range("D7:F7,D7:F7,B14:B28,D14:D28,B30:E34,F37,F39,F40").Select
Range("F40").Activate
Selection.ClearContents
ActiveWindow.SmallScroll Down:=-24
Range("D7:F7").Select
Chemin = "C:\Users\FORCE TB\Desktop\Facture_archive_Coco\Facture"
'ChDir Chemin
Chemin = Chemin & ""
Nomfichier = Format(Now() - 1, " dd-mm-yyyy") & Format(Time, " hh-mm") & ".pdf"
Ligne = Sheets("Historique_Facture").Columns(1).Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious, LookIn:=xlValues).Row
With Sheets("Historique_Facture")
.Hyperlinks.Add .Range("K" & Ligne), Chemin & Nomfichier
Sheets("Facture").Select
End With
Ligne = Sheets("Stock").Range("C2").End(xlDown).Row + 1
Sheets("Stock").Range("A" & Ligne).Value = Sheets("FACTURE").Range("B8").Value
Sheets("Stock").Range("B" & Ligne).Value = Sheets("FACTURE").Range("B11").Value
For i = 12 To 25
If Sheets("Facture").Range("C" & i).Value = "" Then Exit For
Sheets("Stock").Range("C" & Ligne).Value = Sheets("Facture").Range("C" & i).Value
Sheets("Stock").Range("D" & Ligne).Value = Sheets("Facture").Range("D" & i).Value
Sheets("Stock").Range("E" & Ligne).Value = Sheets("Facture").Range("E" & i).Value
Ligne = Ligne + 1
Next
MsgBox "FICHIER ENREGISTRE," & vbCrLf & "VEUILLEZ VERIFIER VOTRE DOSSIER SVP", vbInformation + vbOKOnly, "INFORMATION"
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
End Sub
Bonjour
Sur mon fichier la feuille stock s'appelle vendu.
Sinon fait suivre ton fichier
A+ François
Bonjour François,
Pour le fichier je ne le vois pas.
Merci
Si toi tu as une feuille stock donne moi le fichier
A+ François
Bonjour,
Ma feuille de Stock est celle-ci dont vous avez créée, feuille de Stock qui est vide.
PS : Dont sur ma feuille de Stock la colonne C = Référence produit, D = Article et E = Quantité mais rien ne passe.
Et sur ma feuille de FACTURE la colonne B14 = Référence produit, C14 = Article et D14 = Quantité.
1) Enregistrer et fermer
2) Imprimer la feuille de FACTURE avec zone impression prédéfinit
3) A partir de la feuille FACTURE envoi mail directement le client choisit donc (cellule F11)
4) Enregistre la feuil en PDF sur un dossier qui se trouve sur mon bureau (desktop \CocoPdf)
5) le fameux bouton ( MACRO) qui archive la facture en incrémentant le N° d facture toute en faisant un sauvegarde sur de la facture sur mon bureau (DESKTOP\CocoFacture ) avec la date et l'heure d'enregistrement et le K qui se trouve sur mon historique de facture est le lien vers ce dossier créer avec ce macro facture en PDF
6) Font et texte en blanc (oublie d'écrire B6 => N° d'index )
7) Feuil : Historique_Facture
8) Feuil : Facture
9) Feuil : Stock qui n'a pas pu fonctionnée ici
Bien à vous,
Bonjour
Visiblement nous n'avons pas le même fichier (tu as tout changé)
Donc pas de fichier =au revoir
A+ François


