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

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Conversion d'un Excel en PDF

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Conversion d'un Excel en PDF

n°1397102
kabutosan
Posté le 29-06-2006 à 11:54:15  profilanswer
 

Bonjour a tous,
J'ai cree une petite macro permettant de de convertir une plage donnee d'une feuille excel en pdf; le probleme, c'est qu'une fois la macro activee, je dois donner un nom au fichier pdf cree et specifier un emplacement pour l'enregistrer. Est il possible d'integrer directement dans la macro le nom a donner au pdf cree (qui sera toujours le meme), ainsi que le lieu d'enregistrement?
Merci beaucoup!

mood
Publicité
Posté le 29-06-2006 à 11:54:15  profilanswer
 

n°1397112
jpcheck
Pioupiou
Posté le 29-06-2006 à 11:56:56  profilanswer
 

kabutosan a écrit :

Bonjour a tous,
J'ai cree une petite macro permettant de de convertir une plage donnee d'une feuille excel en pdf; le probleme, c'est qu'une fois la macro activee, je dois donner un nom au fichier pdf cree et specifier un emplacement pour l'enregistrer. Est il possible d'integrer directement dans la macro le nom a donner au pdf cree (qui sera toujours le meme), ainsi que le lieu d'enregistrement?
Merci beaucoup!


ta mcro va en intéresser plus d'un, et moi le premier  :pt1cable:  
je ne sais pas si VB s'active sur les logiciels type adobe, mais la ligne de code pour sauvegarder un fichier ca sera  
with ton_document_pdf 'syntaxe à voir
.SaveAs ="chemin_d'enregistrement"

n°1422319
Soso1981
Posté le 08-08-2006 à 16:18:33  profilanswer
 

kabutosan a écrit :

Bonjour a tous,
J'ai cree une petite macro permettant de de convertir une plage donnee d'une feuille excel en pdf; le probleme, c'est qu'une fois la macro activee, je dois donner un nom au fichier pdf cree et specifier un emplacement pour l'enregistrer. Est il possible d'integrer directement dans la macro le nom a donner au pdf cree (qui sera toujours le meme), ainsi que le lieu d'enregistrement?
Merci beaucoup!


 
En effet, ton code risque d'en intéresser plus d'un je rencontres d'ailleurs à leur actuel le problème. Alors si tu pouvais me donner quelques pistes sur comment tu as faits ça m'arrangerait.
Merci beaucoup !

n°1422321
Profil sup​primé
Posté le 08-08-2006 à 16:28:01  answer
 

Oh oh intéressant, quand ce sera finalisé

n°1429345
kabutosan
Posté le 22-08-2006 à 14:28:22  profilanswer
 

J'ai trouve..
...comment convertir une plage excel en PDF, en specifiant pour le PDF cree un nom et un dossier de destination.
Pour peu que vous ayez une imprimante PDF, la conversion d'une plage se fait facilement par record macro; mais comme le fichier PDF cree a par defaut le nom du workbook, qu'il est stocke par defaut dans un dossier, il faut, pour intercepter la fenetre 'Save as', copier le fichier cree, le stocker dans le repertoire voulu, et detruire le premier fichier cree...
Il faut introduire des pauses dans le programme et c'est pas simple...
Si ca interesse qqn, je lache le code..

n°1429355
Arjuna
Aircraft Ident.: F-MBSD
Posté le 22-08-2006 à 14:34:41  profilanswer
 

sinon, en jouant avec l'objet "WshShell", on peut tout à fait intercepter n'importe quelle fenêtre :
 

Code :
  1. Option Explicit
  2. Sub test()
  3.     Dim wsh As WshShell
  4.     Set wsh = New WshShell
  5.     wsh.AppActivate "cmd.exe"
  6.     wsh.SendKeys "shutdown /s /t 10 /c ""dtc.com"" /f" & vbCrLf
  7. End Sub


 
Par exemple, tu fous ça dans une macro.
Tu démarre une fenêtre CMD.
Tu lance ta macro.
Et pof, ton PC reboote.
 
Pkoi ? Simplement parceque l'objet WshShell est capable de retrouver une fenêtre (le paramètre, c'est le titre de la fenêtre) et ensuite on peut jouer avec (ici j'écris une commande pour rebooter la machine)

n°1429357
Arjuna
Aircraft Ident.: F-MBSD
Posté le 22-08-2006 à 14:35:27  profilanswer
 

A priori, en combinant tout ça, y'a moyen de moyenner ;)

n°1429366
Arjuna
Aircraft Ident.: F-MBSD
Posté le 22-08-2006 à 14:41:17  profilanswer
 

Appelez-moi Dieu :sol:
 
Marche avec PDF995 :
 
=> Démarrez la macro, puis lancez une impression PDF avec PDF995
 
Et hop :sol:
 

Code :
  1. Sub test2()
  2.     Dim wsh As WshShell
  3.     Set wsh = New WshShell
  4.    
  5.     Do While Not wsh.AppActivate("Pdf995 Save As" )
  6.         DoEvents
  7.     Loop
  8.     wsh.SendKeys "grosse cacahuète dans la lucarne.pdf" & vbCrLf
  9. End Sub


Message édité par Arjuna le 22-08-2006 à 14:41:51

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

  Conversion d'un Excel en PDF

 

Sujets relatifs
[WORD] Publipostage à partir d'ExcelVBA/Excel : Taille de la police et d'une zone de texte
[VBA] conversion ASCII en nombreImport / Export Excel sous Access
Problème avec Excel[VB & EXCEL] Problème de récupération de date
Export Excel probleme[ASP.NET] Export Gridview vers Excel
copier une plage d'un fichier Excel non ouvert vers la feuille en courRécupérer nom du fichier Excel en ouverture
Plus de sujets relatifs à : Conversion d'un Excel en PDF


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