Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.
  • Initiateur de la discussion Initiateur de la discussion angoul
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

angoul

XLDnaute Impliqué
Bonjour
grace a votre aide, j'ai fait un petit bouton avec derriere une macro pour faire un enregistrement en format pdf et excel dans un meme dossier. Pour cela encore merci car sa fonctionne.

Je me demander si l’on ne peut pas faire mieux, c’est dire
Je saisie dans la cellule B22 (soit facture, soit devis)
Je me demander si quand on rentre le mot FACTURE en B22, cela ne peut pas enregistrer directement dans le dossier Facture c:\users\auto-ecole\facture.
Et faire pareil pour le mot DEVIS
Merci de vos conseil

le code pour juste enregistrer en pdf et exel dans le meme dossier
Sub SaveAsPdfAndXlsx()
'Enregistrer un pdf de la feuil1 sous le nom : Entreprise-LaDate
Dim Entreprise$, chemin$
Entreprise = "ABC"
chemin = ThisWorkbook.Path & "\"
With ThisWorkbook.Sheets("Feuil1")
Fichier = Entreprise & .[G9].Text & Format(Date, "-ddmmyyyy-") & .[G22].Text
End With
With ActiveSheet
.ExportAsFixedFormat Type:=xlTypePDF, Filename:=chemin & Fichier & ".pdf" _
, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
:=False, OpenAfterPublish:=False
.Copy
ActiveWorkbook.SaveAs Filename:=chemin & Fichier & ".xlsx", FileFormat:=xlOpenXMLWorkbook
ActiveWorkbook.Close True
End With
End Sub

merci
 
Re : modifier macro

Désolé pour le message en retard, mais je te remercie de ton aide vivement; cela va super top maintenant.
J'ai changer le date par un calendrier que je trouve plus pratique et plus jolie, par contre j'ai des petites questions dessus, mais sa c'est dans une autre discution.
 
Re : modifier macro

Bonjour
J'ai besoin d'une petite explication sur le code que tu ma modifier

'Enregistrer un pdf de la feuil1 sous le nom : Entreprise-LaDate
Dim Entreprise$, chemin$
Entreprise = " "
With ThisWorkbook.Sheets("Feuil1")
If .[G22].Text <> "FACTURE" And .[G22] <> "DEVIS" Then MsgBox "Merci de renseigner Facture ou Devis": Exit Sub

chemin = "c:\" & .[G22].Text & "\"
fichier = Entreprise & .[G9].Text & Format(Date, "-ddmmyyyy-") & .[G22].Text


chemin = "d:\imp ecran\"
End With
With ActiveSheet
.ExportAsFixedFormat Type:=xlTypePDF, Filename:=chemin & fichier & ".pdf" _
, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
:=False, OpenAfterPublish:=False
.Copy

ActiveWorkbook.SaveAs Filename:=chemin & fichier & ".xlsx", FileFormat:=xlOpenXMLWorkbook
ActiveWorkbook.Close False
End With

pourquoi j'ai 2 chemins un pour le C et un pour le D, c'est les lignes en gras.

merci de ton conseil
 
Re : modifier macro

bonsoir Angoul, camarchepas et le forum
Angoul je ne sais pas si tu as vraiment besoin de camarchepas pour te réecrire la ligne en ayant changer juste le "D" par "C" soit un peu logique, j'ai ouvert ton fichier mais pour moi j'aurais fait un dossier séparer pour les devis et factures

Pascal
 
Re : modifier macro

Je demande pas que l'on ecrive le c en d, mais juste une explication pourquoi j'ai une ligne en c et une en d
Ton idee d'enregistrer dsns un dossier differents suivant l'intituler est bien, mais je ne c pas faire.
 
Re : modifier macro

Bonjour Pascal , Angoul,

Alors , je n'ai fais que reprendre le code existant en fait , et le chemin est bien différent et change en fonction de la valeur en G22 soit dans le dossier Facture soit dans le dossier Devis :

en fait le chemin vers D ne sert à rien pour moi , l'on pourrait plutot avoir un sous dossier PDF dans Devis et un dans Facture :
CQVD qu'il faut effectivement au préalable créer l'arborescence adéquate.

Code:
Dim Entreprise$, chemin$
  Entreprise = " "
   With ThisWorkbook.Sheets("Feuil1")
   
     If .[G22].Text <> "FACTURE" And .[G22] <> "DEVIS" Then MsgBox "Merci de renseigner Facture ou Devis": Exit Sub
     chemin = "c:\" & .[G22].Text & "\"
     fichier = Entreprise & .[G9].Text & Format(Date, "-ddmmyyyy-") & .[G22].Text
  
   End With
   
  With ActiveSheet
    .ExportAsFixedFormat Type:=xlTypePDF, Filename:=chemin & "PDF\" & fichier & ".pdf" _
    , Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
    :=False, OpenAfterPublish:=False
    .Copy
    ActiveWorkbook.SaveAs Filename:=chemin & fichier & ".xlsx", FileFormat:=xlOpenXMLWorkbook
    ActiveWorkbook.Close False
  End With
 
Re : modifier macro

re ,

Voici avec création du chemin si manquant :

Code:
Sub SaveAsPdfAndXlsx()
   'Enregistrer un pdf de la feuil1 sous le nom : Entreprise-LaDate
Dim Entreprise$, chemin$
Dim Temp As String
   Entreprise = " "
    With ThisWorkbook.Sheets("Feuil1")
    
      If .[G22].Text <> "FACTURE" And .[G22] <> "DEVIS" Then MsgBox "Merci de renseigner Facture ou Devis": Exit Sub
      chemin = "c:\" & .[G22].Text & "\"
      fichier = Entreprise & .[G9].Text & Format(Date, "-ddmmyyyy-") & .[G22].Text
   

   On Error Resume Next
   ChDir chemin
   Temp = Err.Number
   If Err.Number = 76 Then MkDir ("c:\" & .[G22].Text)
   on error goto 0
   End With
   With ActiveSheet
     .ExportAsFixedFormat Type:=xlTypePDF, Filename:=chemin & "PDF\" & fichier & ".pdf" _
     , Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
     :=False, OpenAfterPublish:=False
     .Copy
     ActiveWorkbook.SaveAs Filename:=chemin & fichier & ".xlsx", FileFormat:=xlOpenXMLWorkbook
     ActiveWorkbook.Close False
   End With
End Sub
 
Re : modifier macro

Ben oui et testé d'ailleurs

as-tu un disque C et as tu créé les repertoires demandés ....?

Peut être un problème d'autorisation ?

car logiquement cela crée le répertoire si pas existant.
 
Re : modifier macro

Bonjour
Je vient de modifier le code est maintenant cela fonctionne
le code avant etait :

.ExportAsFixedFormat Type:=xlTypePDF, Filename:=chemin & "PDF\" & fichier & ".pdf" _
, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
:=False, OpenAfterPublish:=False

j'ai modifier comme cela
.ExportAsFixedFormat Type:=xlTypePDF, Filename:=chemin & fichier & ".pdf" _
, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
:=False, OpenAfterPublish:=False

Cela creer un dossier Facture et Devis, et les fichiers XLS et PDF vont dedans et cela va tres bien.

Si vous avez des suggestions pour amelioré le fichier je suis preneur.

Merci encore et a suivre.........
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
850
Réponses
2
Affichages
739
Réponses
2
Affichages
680
Réponses
10
Affichages
758
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…