Conversion automatique sous VB d un xls en pdf

cs_neimad58 Messages postés 25 Date d'inscription lundi 31 juillet 2006 Statut Membre Dernière intervention 18 octobre 2006 - 25 août 2006 à 16:02
metalcoder Messages postés 193 Date d'inscription jeudi 14 février 2002 Statut Membre Dernière intervention 25 mars 2011 - 25 août 2006 à 19:29
bonjour,

je cherche à transformer un fichier excel en un fichier pdf par l'intermédiaire de Adobe creator automatiquement sous VB.

Quelqu'un aurait il une source susceptible de m'aider ?

Merci d'avance pour les réponses,

Neimad58

5 réponses

mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 17
25 août 2006 à 17:17
Salut

Essai de voir via vb, au lieu d'imprimer ton fichier excel avec l'imprimante par défaut, de l'imprimer avec Adobe (ça te proposera une conversion  de type .pdf)

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
0
cs_neimad58 Messages postés 25 Date d'inscription lundi 31 juillet 2006 Statut Membre Dernière intervention 18 octobre 2006
25 août 2006 à 17:33
Merci pour ta réponse mais je ne comprends pas ce que tu me propose :s

Neimad58
0
cs_neimad58 Messages postés 25 Date d'inscription lundi 31 juillet 2006 Statut Membre Dernière intervention 18 octobre 2006
25 août 2006 à 17:33
Merci pour ta réponse mais je ne comprends pas ce que tu me propose :s

Neimad58
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 17
25 août 2006 à 17:40
    Application.ActivePrinter = " Microsoft Office Document Image Writer sur Ne00: "
    ActiveWindow.SelectedSheets.PrintOut Copies: =1, ActivePrinter:= _
        " Microsoft Office Document Image Writer sur Ne00: ", Collate: =True

T'as la syntaxe approximative, t'as plus qu'à l'adapter suivant comment tu as référencé ton classeur, et pense à changer ce que je t'ai mis en gras, le nom de ton imprimante virtuelle, nommée Acrobat Adobe

En fait, au lieu d'imprimer avec Hp Desket N°xx ou autre, sur du papier,
bah ça transforme la page active en image pdf, t'as juste une boite de dialogue qui apparait pour te demander le dossier d'enregistrement.

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
metalcoder Messages postés 193 Date d'inscription jeudi 14 février 2002 Statut Membre Dernière intervention 25 mars 2011 1
25 août 2006 à 19:29
Voici une solution super simple et tres efficace


 


tu installe win2pdf


dispo ici par exemple : http://www.01net.com/telecharger/windows/Bureautique/editeur_de_texte/fiches/17555.html

dans ton projet vb tu ajoute la reference microsoft excel xx.0 object library

dans le code d'un bouton par exemple tu mets

Private Sub Command1_Click()
   'la ligne qui suit peut servir si tu veut imprimer autre chose que excel
   'SaveSetting "Dane Prairie Systems", "Win2PDF", "PDFFileName", "c:\TEST.PDF"
   Dim XlApp As New Excel.Application
   XlApp.Visible = False
   XlApp.Workbooks.Open "c:\MonFichier.xls", , True
   XlApp.Workbooks(1).PrintOut 1, 5, 1, 0, "Win2PDF", 1, , "c:\TEST.PDF"
   XlApp.Workbooks(1).Saved = True
   XlApp.Quit
End Sub

Le fichier test.pdf est a changé par le nom que tu veut
Les chiffres 1,5 sont dans l'ordre le numero de la page debut et fin 
Les1,0 sont dans l'ordre le nombre de copie et l'affichage en preview
Le 1 signifie que tu ecrit ton pdf sans confirmation, attention il efface le precedant si le nom est identique 
La ligne saved=true permet d'eviter que vb te demande systematiquement si tu veut sauvegarder ton fichier excel a la fin de l'impression

@+
Metalcoder
0
Rejoignez-nous