IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

[VBA]Spécifier le chemin d'exportation d'un fichier PDF


Sujet :

VBA Access

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 34
    Points : 18
    Points
    18
    Par défaut [VBA]Spécifier le chemin d'exportation d'un fichier PDF
    Bonjour à tous,
    après une recherche infructueuse sur la faq et le forum je me décide à vous exposer mon problème.

    Sur un formulaire j'ai un bouton qui me permet d'exporter un état en pdf.
    Quand je clique dessus cela m'ouvre la fenêtre pour enregistrer le fichier.
    Ceci permet à l'utilisateur de pouvoir mettre un nom spécfique au fichier pdf.

    Par contre ce que je cherche à faire, c'est d'indiquer un répertoire spécifique où seront stockés les fichiers quand l'utilisateur clique sur ok. Ceci pour éviter d'aller cherche le répertoir sur le réseau.

    J'ai essayé de faire ça avec chdrive et chdir mais sans succés.

    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    Private Sub Commande87_Click()
    On Error GoTo Err_Commande87_Click
     
        Dim stDocName As String
        Dim stLinkCriteria As String
        ChDrive "C:"
        ChDir "C:\dossier"
        stDocName = "Fiche_MAJ_Com"
        stLinkCriteria = "[NUMERO_POSTE]=" & Me![NUMERO_POSTE]
     
        DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
        If MsgBox("Appuyer sur OUI pour confirmer l'envoi de la fiche ", vbYesNo + vbInformation) = vbYes Then
        DoCmd.OpenReport stDocName, acViewNormal, , stLinkCriteria
        Else
        Exit Sub
        End If
     
     
    Exit_Commande87_Click:
        Exit Sub
     
    Err_Commande87_Click:
        MsgBox Err.Description
        Resume Exit_Commande87_Click
     
    End Sub
    Merci pour votre aide.

  2. #2
    Membre habitué
    Inscrit en
    Février 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 64

    Informations forums :
    Inscription : Février 2006
    Messages : 230
    Points : 176
    Points
    176
    Par défaut
    Pas sûr d'avoir tout compris.. Peut-être peux tu t'inspirer de cela ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    Sub getFileName()
    
        ' Affiche la boîte de dialogue Ouvrir fichier d'Office afin de choisir
    
        ' un nom de fichier pour l'enregistrement du fichier.
    
       Dim fileName As String
        Dim result As Integer
        With Application.FileDialog(msoFileDialogFilePicker)
            .Title = "Enregistrement du fichier"
            .Filters.Add "Tous les fichiers", "*.*"
            .Filters.Add "Fichiers JPEG", "*.jpg"
            .Filters.Add "Fichiers PDF", "*.pdf"
            .FilterIndex = 1
            .AllowMultiSelect = False
            '.InitialFileName = CurrentProject.Path
            .InitialFileName = "C:\Ton_Chemin"
            result = .Show
            If (result <> 0) Then
                fileName = Trim(.SelectedItems.Item(1))
                [Fiche_Id] = fileName
            End If
        End With
    End Sub

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 34
    Points : 18
    Points
    18
    Par défaut
    Merci pour ta réponse c'est à peu prés ça que je veux.
    Par contre j'utilise Access 2000 et FileDialog il connait pas.
    As tu une idée?

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour

    FileDialog n'est apparu qu'avec Access 2002 (bibliothèque Microsoft Office x.x) , pour pallier à cet inconvénient va dans la FAQ, il y'a une API qui te permet d'avoir la sélection du fichier.

    Elle est trés simple à mettre en oeuvre.

    Starec

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 34
    Points : 18
    Points
    18
    Par défaut
    Merci pour ta réponse.
    Mais cette API m'ouvre une boîte de dialogue enregistrer sous.

    Surement que je me suis mal expliqué au début.

    Je passe par une imprimante virtuelle pour pouvoir enregistrer mon état en pdf. Dans la mise en page de l'état j'ai choisi une imprimante spécifique.
    Sur mon formulaire un bouton fait appel à cet état et avec la ligne de code suivante, j'obtient une fenêtre Ouput File Name où je dois choisir l'emplacement pour enregistrer le fichier et son nom.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.OpenReport stDocName, acViewNormal, , stLinkCriteria
    Mon but en fait est de garder l'étape où il faut taper un nom pour le fichieret de supprimer l'étape de recherche de l'emplacement en spécifiant l'emplacement dans du code.

  6. #6
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 123
    Points : 12 169
    Points
    12 169
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    Il y a un tutoriel sur la gestion des PDF via PDFCreator édité par cafeine.
    Sinon, si tu utilises PDFWriter d'Acrobat, la réponse est ici.

    Argy
    Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment.

    Ils comptent sur vous...
    Web Site@Mail
    Tutoriels : Déployez vos applications Access 2010 à 2019 */* Réalisez un Assistant de présaisie...
    MDB Viewer : Visionneuse Access v4.0
    *** Je recherche des profils (2 ans min.) Java EE, Fullstack, Front, .Net, Mobile... pour CDI ***

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 34
    Points : 18
    Points
    18
    Par défaut
    Merci argyronet. J'avais trouvé ce tutoriel ainsi que ton code source.
    Mais le problème c'est que je travaille dans une structure importante (env 4000 postes info) et le développemt est régi par quelques régles.
    De plus j'utilise PDF Converter.
    Donc la solution la plus simple que j'ai trouvé était de passer par la mise en page de l'état en choisissant l'imprimante spécifique pour créer des pdf.

  8. #8
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 123
    Points : 12 169
    Points
    12 169
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par romulus34
    développemt est régi par quelques régles.
    Lesquelles ?
    Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment.

    Ils comptent sur vous...
    Web Site@Mail
    Tutoriels : Déployez vos applications Access 2010 à 2019 */* Réalisez un Assistant de présaisie...
    MDB Viewer : Visionneuse Access v4.0
    *** Je recherche des profils (2 ans min.) Java EE, Fullstack, Front, .Net, Mobile... pour CDI ***

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 34
    Points : 18
    Points
    18
    Par défaut
    Si je devais toutes les énumérés ça serait long.
    Mais en gros on doit pas trop touché à tous ce qui est fichiers windows etc...
    Sinon ça doit passer une équipe d'intégration. pour le moment la petite base de donnée est utilisée par 9 pers et j'ai pas trop envie de monter une usine à gaz.
    Au fait c'est pas PDF Créator que j'utilise mais PDF Converter.

    Avec ch drive et ch dir ça peut pas marcher?

Discussions similaires

  1. Réponses: 5
    Dernier message: 17/10/2009, 12h22
  2. [VBA-E]Récupérer chemin du fichier de données d'un graphique
    Par pimouss76 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 31/03/2006, 14h41
  3. [VBA-E]récupérer le chemin d'accès d'un fichier
    Par gil68 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 05/02/2006, 18h50
  4. Réponses: 3
    Dernier message: 08/12/2005, 17h18
  5. Réponses: 1
    Dernier message: 24/05/2005, 14h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo