Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
987 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  enregistrement fichier excel 2007 en pdf

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

enregistrement fichier excel 2007 en pdf

n°2063936
guillaume6​60
Posté le 16-03-2011 à 09:29:45  profilanswer
 

Bonjour tout le monde,
 
Malgré le sujet évoqué sur de nombreux forums, je n'arrive pas à solutionner mon problème.
 
Je souhaite à partir d'un fichier excel 2007 sélectionner quelques onglet, les imprimer en pdf et les enregistrer dans un répertoire (toujours le même) avec comme nom le nom du fichier Excel + la valeur d'une cellule du fichier.
 
Etant novice sur les macros, j'ai utilisé l'enregistreur de macro mais malheureusement rien ne fait mention dans le code de la partie enregistrement dans le dossier souhaité.
 
voici mon (très faible) code :

Code :
  1. Sub deplacer()
  2. '
  3. ' deplacer Macro
  4. '
  5. '
  6.     Sheets(Array("Couts de structures", "CE Struct", "CE Int" )).Select
  7.     Sheets("Couts de structures" ).Activate
  8.     ExecuteExcel4Macro "PRINT(1,,,1,,,,,,,,2,,,TRUE,,FALSE)"
  9. End Sub


 
Quelqu'un peut-il m'aiguiller ?
 
Merci

mood
Publicité
Posté le 16-03-2011 à 09:29:45  profilanswer
 

n°2063942
kiki29
Posté le 16-03-2011 à 09:44:52  profilanswer
 

Salut,voir sur http://www.developpez.net/forums/d [...] distiller/ en bas de page , ce qui devrait aboutir à qqch comme


Option Explicit
 
Sub Tst_2007()
Dim sNomFichierPDF As String
 
    sNomFichierPDF = ThisWorkbook.Path & "\" & "Essai.pdf"
    Application.ScreenUpdating = False
 
    Sheets(Array("Feuil1", "Feuil3", "Feuil5" )).Select
     
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sNomFichierPDF _
        , Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
        :=False, OpenAfterPublish:=False
     
    Sheets("Feuil1" ).Select
    Application.ScreenUpdating = True
End Sub


 
Curieux que l'enregistreur de macros ne te donne rien ?


Message édité par kiki29 le 16-03-2011 à 10:38:51
n°2064021
guillaume6​60
Posté le 16-03-2011 à 12:10:06  profilanswer
 

Bonjour kiki29 et merci,
 
Je ne comprends pas à quoi correspond la partie

Code :
  1. Sheets("Feuil1" ).Select
  2.     Application.ScreenUpdating = True


 
peux tu m'expliquer ?

n°2064051
guillaume6​60
Posté le 16-03-2011 à 13:48:05  profilanswer
 

Le code ci-dessous fonctionne parfaitement :
 

Code :
  1. Sub Tst_2007()
  2. Dim sNomFichierPDF As String
  3.  
  4.     sNomFichierPDF = ThisWorkbook.path & "\" & "Couts de structures " & Sheets("DATA" ).range("A2" ).Value & ".pdf "
  5.     Application.ScreenUpdating = False
  6.     Sheets(Array("Couts de structures", "CE Struct", "CE Int", "CE VIP", "CE Staff" )).Select
  7.    
  8.     ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sNomFichierPDF _
  9.         , Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
  10.         :=False, OpenAfterPublish:=False
  11. End Sub


 
En revanche, le fichier pdf est enregistré dans le dossier où est le fichier excel, comment faire pour l'enregistrer dans un autre dossier ?

n°2064107
olivthill
Posté le 16-03-2011 à 14:49:34  profilanswer
 

Application.ScreenUpdating = False

Cette ligne permet que les actions se fassent sans que la fenêtre active ne soit mise à jour en direct, les traitements se faisant en arrière plan, ce qui permet de gagner un peu de vitesse, quand il y a, par exemple, une boucle sur un ensemble de cellules. Mais ici, dans le cas de la sauvegarde, cela ne sert pas à grand chose.
 
Pour choisir un autre dossier de destination, il suffit de changer la définition de sNomFichierPDF. Par exemple :

  sNomFichierPDF = "C:\Dossier_toto\" & "Couts de structures " & Sheets("DATA" ).range("A2" ).Value & ".pdf "

n°2064114
guillaume6​60
Posté le 16-03-2011 à 15:00:24  profilanswer
 

Parfait, tout fonctionne parfaitement, merci à vous deux !!!


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  enregistrement fichier excel 2007 en pdf

 

Sujets relatifs
Création d'un lien HTML vers un fichier localHelp ! AJAX - POST et PHP pour fichier CSV
Code pour changer l'orde d'un nom de fichierMacro Excel - Problème avec ActiveCell.Font.ColorIndex
Excel VBA Gestion Suivi des stock[bash] Extraire et concaténer 2 strings depuis un fichier
fusion dans Word à partir d'ExcelImporter fichier de site a site
VBA excel macro conditionnelle HELP!!Comment Signer une portion d'un fichier XML?
Plus de sujets relatifs à : enregistrement fichier excel 2007 en pdf


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR