Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > IHM
IHM Ce forum est dédié aux questions relatives à la création de formulaires et d'états, avec ou sans code VBA, et macros.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 19/02/2011, 23h30   #1
Nouveau Membre du Club
 
Inscription : février 2009
Messages : 81
Détails du profil
Informations forums :
Inscription : février 2009
Messages : 81
Points : 27
Points : 27
Par défaut Création de fichiers PDF

Salut à tous,

Je suis en train de créer une base access avec des états. Je souhaite laisser la possibilité à l'utilisateur de choisir soit d'imprimer l'état, soit de créer un PDF à partir de ce même état. Pour cela, j'ai utiliser la méthode trouvée sur ce site http://officesystem.access.over-blog...-11323662.html.
Cela fonctionne à merveille. Avantage, c'est que je n'ai pas besoin d'installer une imprimante virtuelle.
Avant de faire appel à ce code, je demande à l'utilisateur de choisir le dossier où sera créé le fichier PDF. Problème, le fichier créé se trouve dans le dossier parent du dossier que j'ai sélectionné et je ne vois pas du tout pourquoi ??? (exemple : je sélectionne C:\Toto\BaseAccess et mon fichier est créé dans C:\Toto =>

Si quelqu'un veut bien me venir en aide ?

Merci
Marsupio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2011, 11h00   #2
Membre régulier
 
Homme Philippe
Technicien biomédical
Inscription : mai 2005
Messages : 59
Détails du profil
Informations personnelles :
Nom : Homme Philippe
Âge : 49
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Technicien biomédical
Secteur : Santé

Informations forums :
Inscription : mai 2005
Messages : 59
Points : 72
Points : 72
Bonjour

Et avec c:\Toto\BaseAccess\ ca donne quoi ?
Fifi69 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2011, 12h16   #3
Nouveau Membre du Club
 
Inscription : février 2009
Messages : 81
Détails du profil
Informations forums :
Inscription : février 2009
Messages : 81
Points : 27
Points : 27
Merci pour ta réponse => ça ne donne rien.

Cependant, à force de persévérance, j'ai réussi à obtenir ce que je veux.

Voici mon code, ça inspirera peut-être certains d'entre nous :

- je sélectionne le dossier où doit se situer le fichier PDF.
- je lance la fonction permettant de créer le fichier PDF (selon le site indiqué sur mon précédent message)

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
Public Function PDF()
Dim oFD As Office.FileDialog
Dim CheminPDF As String
Dim NomPDF As String
 
'définit le nom du fichier Pdf à générer
NomPDF = "" & NomEtatPDF & "" & " [" & Format(Date, "yyyy-mm-dd") & " - " & Format(Time, "hh.mm") & "]"
 
Set oFD = Application.FileDialog(msoFileDialogFolderPicker)
With oFD
'Paramètrage de la boite de dialogue "sélection de dossier"
.Title = "Sélectionner le dossier de destination pour le fichier PDF ..." 'Titre de la fenêtre
.AllowMultiSelect = False 'Un seul Fichier possible
 
If .Show Then
If .SelectedItems.count > 0 Then
CheminPDF = .SelectedItems(1)
 
'propose d'ouvrir le fichier Pdf après création
If MsgBox("Voulez-vous ouvrir le fichier PDF après création ?", vbYesNo + vbQuestion, _
"Création PDF ...") = vbYes Then
OuvrirPDF = True
Else
OuvrirPDF = False
End If
 
'création du fichier Pdf
If ConvertReportToPDF(NomEtat, vbNullString, _
CheminPDF & "\" & NomPDF & ".pdf", False, OuvrirPDF, 0, "", "", 0, 0) Then
'Le 1er True/False indique si on demande l’intervention de l’opérateur pour composer le nom du fichier PDF.
'Le 2e True/False indique si le viewer PDF doit être lancé pour visualiser le fichier PDF.
 
'message de confirmation
If OuvrirPDF = False Then MsgBox "Le fichier PDF a été créé avec succès." _
& vbCrLf & "" & vbCrLf & "Il porte le nom : " & NomPDF, vbOKOnly + vbInformation, "Création PDF ..."
Else
MsgBox "Erreur sur création du fichier pdf"
End If
End If
End If
End With
 
'ferme oFile et oFSO
Set oFD = Nothing
End Function
a+
Marsupio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2011, 20h28   #4
Membre éclairé
 
Homme Christophe AUMOITTE
Inscription : octobre 2009
Messages : 253
Détails du profil
Informations personnelles :
Nom : Homme Christophe AUMOITTE
Âge : 43
Localisation : France, Bas Rhin (Alsace)

Informations forums :
Inscription : octobre 2009
Messages : 253
Points : 303
Points : 303
Bonsoir à tous,

J'interviens simplement pour donner un avis sur ce code.

Effectivement, le code de Stephan LEBAN marche parfaitement, comme tous les codes qu'ils proposent d'ailleurs.
Seul petit problème, lorsque l'on a des images dessinées avec la librairie GDiPlus, la couleur rouge se dégrade avec un liseré blanc sur les bords des symboles déssinés.
C'est dommage, car chose rare pour les exports *.pdf, ce code gère très bien la transparence des images *.png sur lequel je dessine avec la GDiPlus.

Pour le coup, j'ai été obligé de me retourner sur l'imprimante virtuel SolidPdfCreator qui est la seule FreeWare que j'ai trouvé et qui gère ce problème d'exportation des images transparentes.

Alors Stephan, si par hasard tu lis ce message et que tu as une idée pour gérer ce problème, ce serait vraiment super.

Cordialement

Christophe
marsouin_89 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h32.


 
 
 
 
Partenaires

Hébergement Web