Sauvegarder factures en PDF
Fermé
simkmil
Messages postés
481
Date d'inscription
mardi 19 février 2008
Statut
Membre
Dernière intervention
24 décembre 2024
-
23 mai 2020 à 11:12
simkmil Messages postés 481 Date d'inscription mardi 19 février 2008 Statut Membre Dernière intervention 24 décembre 2024 - 2 juin 2020 à 16:23
simkmil Messages postés 481 Date d'inscription mardi 19 février 2008 Statut Membre Dernière intervention 24 décembre 2024 - 2 juin 2020 à 16:23
A voir également:
- Facture boulanger pdf
- Lire le coran en français pdf - Télécharger - Histoire & Religion
- Comment faire un pdf - Guide
- Save as pdf - Télécharger - Bureautique
- Télécharger dictionnaire larousse pdf gratuit - Télécharger - Dictionnaires & Langues
- Comment modifier un pdf - Guide
4 réponses
M-12
Messages postés
1331
Date d'inscription
lundi 22 septembre 2008
Statut
Membre
Dernière intervention
8 avril 2023
283
23 mai 2020 à 11:35
23 mai 2020 à 11:35
Bonjour,
Teste comme ceci
Teste comme ceci
Sub EnregistrementFacture() 'je d?clare mes variables Dim NomDossier As String Dim Chemin As String 'je nomme le dossier et donne le chemin NomDossier = Application.InputBox("ArchivageFactures:", "Année ?") Chemin = "C:\Documents\ArchivageFactures\" & NomDossier & "\" If NomDossier = "" Then Exit Sub 'j'enregistre au format PDF ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _ Chemin & "FactureNumero_" & Range("B10").Value & ".pdf", Quality:= _ xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _ From:=1, To:=1, OpenAfterPublish:=False End Sub
cs_Le Pivert
Messages postés
7904
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
14 août 2024
729
23 mai 2020 à 12:22
23 mai 2020 à 12:22
Bonjour,
Tu as oublié de créer un nouveau dossier comme ceci:
Tu as oublié de créer un nouveau dossier comme ceci:
Sub EnregistrementFacture() 'je déclare mes variables Dim NomDossier As String Dim Chemin As String 'je nomme le dossier NomDossier = Application.InputBox("ArchivageFactures:", "Année ?") 'je crée le dossier MkDir "C:\Documents\ArchivageFactures\" & NomDossier 'je donne le chemin Chemin = "C:\Documents\ArchivageFactures\" & NomDossier & "\" If NomDossier = "" Then Exit Sub 'j'enregistre au format PDF ActiveSheet.ExportAsFixedFormat Type:=xlTypexlsx, Filename:= _ Chemin & "FactureNumero_" & Range("B10").Value & ".pdf", quality:= _ xlQualityStandard, includedocproperties:=True, ignoreprintareas:=False, _ from:=1, to:=1, openafterpublish:=False End Sub
simkmil
Messages postés
481
Date d'inscription
mardi 19 février 2008
Statut
Membre
Dernière intervention
24 décembre 2024
35
24 mai 2020 à 10:47
24 mai 2020 à 10:47
Bonjour,
je viens d'essayer … et ça ne fonctionne toujours pas !
j'ai pourtant fait un copier-coller de ce que tu m'as envoyé, et toujours la partie ActiveSheet…. qui se met en jaune.
Je vais tenter de t'envoyer l'entièreté de mon fichier via cijoint.
Merci d'avance de regarder où j'ai fait une erreur (ou plusieurs)
sur la facture j'ai mis des boutons :
Sauvegarder m'envoie les données sur Historique_Facture
Imprimer : m'imprime deux exemplaires
Enregistrement facture en pdf : c'est là que ça cloche !
Nouvelle facture et effacement des données : fonctionne correctement.
Mon projet serait également de ne faire qu'un seul bouton pour l'enregistrement en pdf et la sauvegarde.
voici mon fichier : https://cjoint.com/c/JEyiTawLSeR
je viens d'essayer … et ça ne fonctionne toujours pas !
j'ai pourtant fait un copier-coller de ce que tu m'as envoyé, et toujours la partie ActiveSheet…. qui se met en jaune.
Je vais tenter de t'envoyer l'entièreté de mon fichier via cijoint.
Merci d'avance de regarder où j'ai fait une erreur (ou plusieurs)
sur la facture j'ai mis des boutons :
Sauvegarder m'envoie les données sur Historique_Facture
Imprimer : m'imprime deux exemplaires
Enregistrement facture en pdf : c'est là que ça cloche !
Nouvelle facture et effacement des données : fonctionne correctement.
Mon projet serait également de ne faire qu'un seul bouton pour l'enregistrement en pdf et la sauvegarde.
voici mon fichier : https://cjoint.com/c/JEyiTawLSeR
cs_Le Pivert
Messages postés
7904
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
14 août 2024
729
>
simkmil
Messages postés
481
Date d'inscription
mardi 19 février 2008
Statut
Membre
Dernière intervention
24 décembre 2024
Modifié le 24 mai 2020 à 11:34
Modifié le 24 mai 2020 à 11:34
C'est ton chemin qui n'est pas bon, il manque des éléménts
celui-ci qui doit être bon
et celui là
où il manque
corrige le , ça devrait fonctionner
Mon projet serait également de ne faire qu'un seul bouton pour l'enregistrement en pdf et la sauvegarde.
appeler ces macros dans le même bouton:
voilà
@+ Le Pivert
celui-ci qui doit être bon
ChDir "C:\Users\bs382\OneDrive\Documents\Archivage Factures\2020" ActiveWorkbook.SaveAs Filename:= _ "C:\Users\bs382\OneDrive\Documents\Archivage Factures\2020\Facturier_DHoe.xlsm" _ , FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
et celui là
"C:\Documents\ArchivageFactures\" & NomDossier & "\"
où il manque
C:\Users\bs382\OneDrive
corrige le , ça devrait fonctionner
Mon projet serait également de ne faire qu'un seul bouton pour l'enregistrement en pdf et la sauvegarde.
appeler ces macros dans le même bouton:
Sub EnregistrementFacture() 'enregistrement PDF 'je déclare mes variables Dim NomDossier As String Dim Chemin As String 'je nomme le dossier et donne le chemin NomDossier = Application.InputBox("ArchivageFactures:", "Année ?") If NomDossier = "" Then Exit Sub 'je crée le dossier MkDir "C:\Users\bs382\OneDrive\Documents\ArchivageFactures\" & NomDossier 'je donne le chemin Chemin = "C:\Users\bs382\OneDrive\Documents\ArchivageFactures\" & NomDossier & "\" 'j'enregistre au format PDF ActiveSheet.ExportAsFixedFormat Type:=xlTypexlsx, Filename:= _ Chemin & "FactureNumero_" & Range("B10").Value & ".pdf", quality:= _ xlQualityStandard, includedocproperties:=True, ignoreprintareas:=False, _ from:=1, to:=1, openafterpublish:=False End Sub Sub Enregistrement() 'sauvegarde ChDir "C:\Users\bs382\OneDrive\Documents\Archivage Factures\2020" ActiveWorkbook.SaveAs Filename:= _ "C:\Users\bs382\OneDrive\Documents\Archivage Factures\2020\Facturier_DHoe.xlsm" _ , FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False End Sub
voilà
@+ Le Pivert
M-12
Messages postés
1331
Date d'inscription
lundi 22 septembre 2008
Statut
Membre
Dernière intervention
8 avril 2023
283
>
cs_Le Pivert
Messages postés
7904
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
14 août 2024
24 mai 2020 à 13:11
24 mai 2020 à 13:11
Re,
Si tu veut enregistrer en PDF, commence déjà par modifier (comme préciser dans mon post) dans ta ligne
Type:=xlTypexlsx en Type:=xlTypePDF
Si tu veut enregistrer en PDF, commence déjà par modifier (comme préciser dans mon post) dans ta ligne
Type:=xlTypexlsx en Type:=xlTypePDF
simkmil
Messages postés
481
Date d'inscription
mardi 19 février 2008
Statut
Membre
Dernière intervention
24 décembre 2024
35
>
M-12
Messages postés
1331
Date d'inscription
lundi 22 septembre 2008
Statut
Membre
Dernière intervention
8 avril 2023
24 mai 2020 à 20:21
24 mai 2020 à 20:21
Merci, merci, merci !!!
Je vais mettre cela en route dès demain matin (car aujourd'hui j'ai suffisamment "joué" avec mon PC !)
C'est une chose formidable que cette aide que l'on peut trouver ici.
Je suis à la retraite, et je tente de faire un petit programme pour un ami. J'ai de bonnes connaissances en Excel, mais peu d'expérience en VBA. J'ai bien suivi des cours (en cours du soir) mais cela fait quand même quelques années …
J'espère à mon tour pouvoir aider prochainement quelqu'un à l'aide de mes petites connaissances.
Merci, continuez bien, vous êtes formidables.
Je vais mettre cela en route dès demain matin (car aujourd'hui j'ai suffisamment "joué" avec mon PC !)
C'est une chose formidable que cette aide que l'on peut trouver ici.
Je suis à la retraite, et je tente de faire un petit programme pour un ami. J'ai de bonnes connaissances en Excel, mais peu d'expérience en VBA. J'ai bien suivi des cours (en cours du soir) mais cela fait quand même quelques années …
J'espère à mon tour pouvoir aider prochainement quelqu'un à l'aide de mes petites connaissances.
Merci, continuez bien, vous êtes formidables.
simkmil
Messages postés
481
Date d'inscription
mardi 19 février 2008
Statut
Membre
Dernière intervention
24 décembre 2024
35
25 mai 2020 à 10:03
25 mai 2020 à 10:03
Bonjour, hélas j'ai toujours mon problème !
si je lance la sauvegarde en pdf j'ai la ligne MkDir … qui se met en jaune
je lui met un apostrophe (pour l'éviter) et c'est le bloc ActiveSheet.Export… qui se met en jaune.
J'ai également changé le type en pdf.
Enfin je pense avoir suivi toutes vos indications ?? où alors je me suis planté quelque part ?
Je vous renvoie par cjoint mon fichier actuel (légèrement changé par rapport à celui de hier puisque j'y ai introduit vos changements.
voici le lien : https://cjoint.com/c/JEzicVX0tkR
encore merci de votre aide
si je lance la sauvegarde en pdf j'ai la ligne MkDir … qui se met en jaune
je lui met un apostrophe (pour l'éviter) et c'est le bloc ActiveSheet.Export… qui se met en jaune.
J'ai également changé le type en pdf.
Enfin je pense avoir suivi toutes vos indications ?? où alors je me suis planté quelque part ?
Je vous renvoie par cjoint mon fichier actuel (légèrement changé par rapport à celui de hier puisque j'y ai introduit vos changements.
voici le lien : https://cjoint.com/c/JEzicVX0tkR
encore merci de votre aide
cs_Le Pivert
Messages postés
7904
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
14 août 2024
729
25 mai 2020 à 10:43
25 mai 2020 à 10:43
Cela ne sert à rien d'envoyer ton fichier, le problème vient de ton chemin!
Et nous sur notre machine, ton chemin on ne peut pas le tester!
Tu vas te servir de l’enregistreur de macro.
Tu enregistres ton classeur en PDF manuellement et là tu auras ta macro avec le chemin correct. il te suffira de mettre cette macro dans ton projet
Voilà, c'est ce que tu aurais dû faire dès le départ
Et nous sur notre machine, ton chemin on ne peut pas le tester!
Tu vas te servir de l’enregistreur de macro.
Tu enregistres ton classeur en PDF manuellement et là tu auras ta macro avec le chemin correct. il te suffira de mettre cette macro dans ton projet
Voilà, c'est ce que tu aurais dû faire dès le départ
cs_Le Pivert
Messages postés
7904
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
14 août 2024
729
>
cs_Le Pivert
Messages postés
7904
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
14 août 2024
Modifié le 25 mai 2020 à 11:30
Modifié le 25 mai 2020 à 11:30
J'ai mis ThisWorkbook.Path comme chemin. Cela va enregistrer dans le même dossier que le classeur.
C'est pour te démontrer que le code fonctionne.
L'avantage c'est que cela fonctionne sur n'importe quelle machine!
https://www.cjoint.com/c/JEzjAIQ5jRQ
Voilà
@+ Le Pivert
C'est pour te démontrer que le code fonctionne.
L'avantage c'est que cela fonctionne sur n'importe quelle machine!
https://www.cjoint.com/c/JEzjAIQ5jRQ
Voilà
@+ Le Pivert
simkmil
Messages postés
481
Date d'inscription
mardi 19 février 2008
Statut
Membre
Dernière intervention
24 décembre 2024
35
>
cs_Le Pivert
Messages postés
7904
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
14 août 2024
Modifié le 25 mai 2020 à 20:44
Modifié le 25 mai 2020 à 20:44
Bonsoir,
d'abord merci beaucoup pour le mal que tu te donnes, mais j'ai toujours un problème.
J'ai pris ton exemplaire et ai sauvegardé une première facture : OK tout fonctionne et j'ai une inscription : "facture enregistrée"; là, je me dis … Super ! ça fonctionne et du coup je fais une seconde facture et … patatra ça cale au niveau du MKdir
Je me demande si c'est normal que l'on crée un directory à chaque facture ? je pense que une fois créé il est bon pour toutes les factures.
Je l'ai mis entre apostrophes et paf, c'est la partie ActiveSheet qui se met en jaune.
J'ai créé mon chemin en utilisant l'enregistreur de macro, cela donne :
ChDir "E:\Essai Factures"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"E:\Essai Factures\Facturier_DHoe.pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
False
et je retrouve uniquement ma première facture, mais sans son numéro (utile pour la retrouver)
encore une fois, merci de ton aide. Il n'y a pas urgence, je ne reviendrai sur le PC que demain dans la journée.
en tant que retraité confiné, je n'ai pas une minute à moi. Tel par exemple, cet après midi aller à Bruxelles (100 km de chez moi) pour y chercher un duplicata pour le permis de conduire de mon petit fils, ayant égaré l'original et il était impossible de recevoir cela par mail… pourtant nous sommes au XXI siècle.
Bonne soirée;
d'abord merci beaucoup pour le mal que tu te donnes, mais j'ai toujours un problème.
J'ai pris ton exemplaire et ai sauvegardé une première facture : OK tout fonctionne et j'ai une inscription : "facture enregistrée"; là, je me dis … Super ! ça fonctionne et du coup je fais une seconde facture et … patatra ça cale au niveau du MKdir
Je me demande si c'est normal que l'on crée un directory à chaque facture ? je pense que une fois créé il est bon pour toutes les factures.
Je l'ai mis entre apostrophes et paf, c'est la partie ActiveSheet qui se met en jaune.
J'ai créé mon chemin en utilisant l'enregistreur de macro, cela donne :
ChDir "E:\Essai Factures"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"E:\Essai Factures\Facturier_DHoe.pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
False
et je retrouve uniquement ma première facture, mais sans son numéro (utile pour la retrouver)
encore une fois, merci de ton aide. Il n'y a pas urgence, je ne reviendrai sur le PC que demain dans la journée.
en tant que retraité confiné, je n'ai pas une minute à moi. Tel par exemple, cet après midi aller à Bruxelles (100 km de chez moi) pour y chercher un duplicata pour le permis de conduire de mon petit fils, ayant égaré l'original et il était impossible de recevoir cela par mail… pourtant nous sommes au XXI siècle.
Bonne soirée;
cs_Le Pivert
Messages postés
7904
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
14 août 2024
729
>
simkmil
Messages postés
481
Date d'inscription
mardi 19 février 2008
Statut
Membre
Dernière intervention
24 décembre 2024
26 mai 2020 à 07:53
26 mai 2020 à 07:53
Je me demande si c'est normal que l'on crée un directory à chaque facture ? je pense que une fois créé il est bon pour toutes les factures.
Si tu enregistres dans le même dossier, alors à quoi te sert cette ligne de code?
et je retrouve uniquement ma première facture, mais sans son numéro (utile pour la retrouver)
dans le chemin il manque quelque chose!
il manque ceci:
Voilà il suffit de corriger ces 2 points et cela devrait être opérationnel
@+ Le Pivert
Si tu enregistres dans le même dossier, alors à quoi te sert cette ligne de code?
'je nomme le dossier et donne le chemin NomDossier = Application.InputBox("ArchivageFactures:", "Année ?")
et je retrouve uniquement ma première facture, mais sans son numéro (utile pour la retrouver)
dans le chemin il manque quelque chose!
"E:\Essai Factures\Facturier_DHoe.pdf"
il manque ceci:
"FactureNumero_" & Range("B10").Value
Voilà il suffit de corriger ces 2 points et cela devrait être opérationnel
@+ Le Pivert
simkmil
Messages postés
481
Date d'inscription
mardi 19 février 2008
Statut
Membre
Dernière intervention
24 décembre 2024
35
1 juin 2020 à 12:18
1 juin 2020 à 12:18
Ouf ! ça y est, ça fonctionne.
Je n'ai pas su revenir plus tôt sur ce problème, mais j'avais décidé de m'y remettre ce matin afin de pouvoir en terminer.
Tout (presque) fonctionne.
Je fais ma facture, je l'imprime en deux exemplaires, je l'inscrit dans l'historique clients puis je la sauvegarde en pdf.
Sauf que en faisant ces deux opérations, j'incrémente deux fois et je voudrais diminuer le nombre de boutons afin de simplifier l'utilisation de celui qui s'en servira.
J'ai un module 1
archiver : il écrit dans l'historique clients, vide le corps de facture , vide le nom et incrémente le nouveau numéro de facture.
le module 2 permet d'imprimer deux exemplaires : OK
le module 3 incrémente le numéro de facture : je pense que je devrais le supprimer
le module 4 enregistre en pdf
le module 5 enregistre en pdf serait à supprimer.
Il faut que je sauvegarde dans l'historique client les données telles qu'elles sont, mais je dois également sauvegarder "l'image" de la facture avec son numéro afin de pouvoir procéder à une réimpression plus tard ou simplement de l'envoyer au client par pdf.
Je suis un peu perdu, et j'ai peur d'oter des choses essentielles...
Merci d'encore un peu m'aider.
Bonne journée à vous.
Je n'ai pas su revenir plus tôt sur ce problème, mais j'avais décidé de m'y remettre ce matin afin de pouvoir en terminer.
Tout (presque) fonctionne.
Je fais ma facture, je l'imprime en deux exemplaires, je l'inscrit dans l'historique clients puis je la sauvegarde en pdf.
Sauf que en faisant ces deux opérations, j'incrémente deux fois et je voudrais diminuer le nombre de boutons afin de simplifier l'utilisation de celui qui s'en servira.
J'ai un module 1
archiver : il écrit dans l'historique clients, vide le corps de facture , vide le nom et incrémente le nouveau numéro de facture.
le module 2 permet d'imprimer deux exemplaires : OK
le module 3 incrémente le numéro de facture : je pense que je devrais le supprimer
le module 4 enregistre en pdf
le module 5 enregistre en pdf serait à supprimer.
Il faut que je sauvegarde dans l'historique client les données telles qu'elles sont, mais je dois également sauvegarder "l'image" de la facture avec son numéro afin de pouvoir procéder à une réimpression plus tard ou simplement de l'envoyer au client par pdf.
Je suis un peu perdu, et j'ai peur d'oter des choses essentielles...
Merci d'encore un peu m'aider.
Bonne journée à vous.
cs_Le Pivert
Messages postés
7904
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
14 août 2024
729
2 juin 2020 à 11:10
2 juin 2020 à 11:10
pour cela:
mais je dois également sauvegarder "l'image" de la facture avec son numéro
Voilà
@+ Le Pivert
mais je dois également sauvegarder "l'image" de la facture avec son numéro
Option Explicit 'enregistrer facture au nom du client dans le même dossier que ce classeur Sub savefacture() Worksheets("Facture").Select cacherbouton Worksheets("Facture").Copy With ActiveWorkbook .SaveAs Filename:=ThisWorkbook.Path & "\" & Range("E10") & ".xlsx", FileFormat:=xlOpenXMLWorkbook .Close SaveChanges:=False End With reinitialiser MsgBox "Enregistrer dans le même dossier", vbInformation, "Enregistrement facture" End Sub Sub cacherbouton() Dim Sh As Shape For Each Sh In ActiveWorkbook.ActiveSheet.Shapes If Sh.Name <> "Image 1" And Sh.Name <> "Rectangle 2" Then Sh.Visible = False End If Next Sh End Sub Sub reinitialiser() Dim Sh As Shape For Each Sh In ActiveWorkbook.ActiveSheet.Shapes Sh.Visible = True Next End Sub
Voilà
@+ Le Pivert
simkmil
Messages postés
481
Date d'inscription
mardi 19 février 2008
Statut
Membre
Dernière intervention
24 décembre 2024
35
>
cs_Le Pivert
Messages postés
7904
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
14 août 2024
2 juin 2020 à 16:23
2 juin 2020 à 16:23
Merci beaucoup, j'essaie cela ce soir. Maintenant, il fait trop chaud !
j'envoie le retour des que possible
Bon après midi ensoleillée.
j'envoie le retour des que possible
Bon après midi ensoleillée.
23 mai 2020 à 23:04
Je vais essayer çela dès demain matin.
Bonne soirée
24 mai 2020 à 10:45
je viens d'essayer … et ça ne fonctionne toujours pas !
j'ai pourtant fait un copier-coller de ce que tu m'as envoyé, et toujours la partie ActiveSheet…. qui se met en jaune.
Je vais tenter de t'envoyer l'entièreté de mon fichier via cijoint.
Merci d'avance de regarder où j'ai fait une erreur (ou plusieurs)
sur la facture j'ai mis des boutons :
Sauvegarder m'envoie les données sur Historique_Facture
Imprimer : m'imprime deux exemplaires
Enregistrement facture en pdf : c'est là que ça cloche !
Nouvelle facture et effacement des données : fonctionne correctement.
Mon projet serait également de ne faire qu'un seul bouton pour l'enregistrement en pdf et la sauvegarde.
voici le lien : https://cjoint.com/c/JEyiTawLSeR
grand merci d'avance.