Merci & Conversion excel en .pdf

Mako

XLDnaute Nouveau
Bonjour le forum,

Avant tout chose je remercie toutes les personnes de ce forum qui prennent le temps d aider des gens comme moi, grace a vous je suis en passe de terminer un projet excel sachant que je suis parti de connaissance 0 si ce n est -1 en matiere d excel, c est ici que j ai toute apris. MERCI

Mais j ai encore besoin de vous :whistle:, je rencontre un pitit pbl pour convertir excel en fichier .pdf: j arrive sans problem a le convertir grace à adobe, mais le problem est que adobe se met alors comme imprimante par default, et de ce faite, tous les boutons que j ai créé pour imprimer des résultats se transforme en bouton convertisseur en .pdf,il fau alors farfouiller le system pour changer d imprimante par défault chaque fois que j utilise adobe, et vu que mon projet sera utiliser par des gens qui n y connaissent rien en informatique, je ne pourrai pas leur expliquer la manipe. Je sais que cela sort quelque peux du domaine excel, mais j esper que quelqu un pourra m aider.
 

Mako

XLDnaute Nouveau
Merci pour ton code pascal,

Dim monimprimante

monimprimante = ActivePrinter 'récupérer imprimante active

For aa = 0 To 9
Nom = 'PDF sur ne0' & aa & ':'
On Error Resume Next
Application.ActivePrinter = Nom
If ActivePrinter = Nom Then Exit For
Next.

'Là ta conversion en PDF puis

ActivePrinter = monimprimante 'remettre imprimante active

Si je comprend bien il faut mettre un code pour convertir en PDF apres 'Next.', je t avoue que je suis incapable d en faire un ...
:eek:
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Re

En plus simple ce que tu peux faire c'est à l'ouverture de ton fichier récupérer le nom de ton imprimante active puis de la remettre au début du code de chaque clic d'impresson

Il faut déclarer Public ta variable dans un MODULE

Public MonImprimante as string


Dans le Thisworkbook

Private Sub Workbook_Open()

MonImprimante = ActivePrinter 'récupérer imprimante active


Puis au début du code avant l'impression

ActivePrinter = MonImprimante 'remettre imprimante active
 

PascalXLD

XLDnaute Barbatruc
Modérateur
RE

Si vraiment cela modifies l'imprimante par défaut sous windows en effet cela va être problèmatique

Si cela change juste l'imprimante active voilà un code récupéré qui permet de remettre l'imprimante par défaut comme imprimante active

Option Explicit

Declare Function GetProfileStringA Lib 'KERNEL32' (ByVal lpAppName As String, ByVal lpKeyName As String, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Integer) As Integer
Dim Printer As String
Dim Port As String

Sub Default_Printer_Port()

Dim Result As String * 255

Call GetProfileStringA('Windows', 'Device', '', Result, 254)
Printer = Left(Result, InStr(Result, ',') - 1)
Port = Mid(Result, InStr(InStr(Result, ',') + 1, Result, ',') + 1)

End Sub

Sub modif()
Default_Printer_Port
ActivePrinter = Printer & ' sur ' & Port
End Sub
 

Ti_

Nous a quitté
Repose en paix
je m'immisce dans ce fil pour vous rappeler que sur Vériti, vous pouvez trouver mon programme XLS2PDF qui réalise l'interface entre Excel et PDFCreator et dont le code source est librement accessible. Et même si le code d'XLS2PDF n'est pas d'un simplicité évidente, j'y ai joint un programme d'exemple montrant comment convertir à la demande un fichier Excel ou une simple feuille (ou plusieurs) depuis un programme VBA sans pratiquement aucune autre programmation que celle que je fournis déjà

http://www.veriti.net
 

Ti_

Nous a quitté
Repose en paix
je te réponds ici plutôt que sur Vériti, parce que c'est plus simple que de répondre sur un espace réservé aux commentaires.
Tu dis que PDFCreator s'ouvre, mais normalement il doit rester invisible, donc tu ne dois pas le voir du tout, à moins que tu l'aies déjà ouvert auparavant 'à la main' (et si je me souviens bien, dans ce cas XLS2PDF t'annonce une erreur). J'en conclus qu'il doit y avoir une chose que tu ne fais pas correctement, ou alors tu as un problème bizarre sur ta machine.
 

Discussions similaires

Réponses
7
Affichages
415

Statistiques des forums

Discussions
312 328
Messages
2 087 318
Membres
103 515
dernier inscrit
Cherbil12345