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

Requêtes et SQL. Discussion :

Créer un PDF par client


Sujet :

Requêtes et SQL.

  1. #1
    Membre du Club
    Inscrit en
    Août 2006
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 126
    Points : 49
    Points
    49
    Par défaut Créer un PDF par client
    Bonjour,

    Dans ma BDD, j'ai crée un état qui récapitule les différentes factures de commissions et qui l'enregistre dans un dossier au format PDF (1 PDF avec plusieurs factures).
    J'aimerais créer autant de factures PDF que de clients soit 1 PDF par client.

    Je progresse de jour en jour dans la formation VBA grâce à vos interventions et vous en remercie.

    J'ai tenté plusieurs choses qui n'ont pas été concluantes. Je sais que mon code est incomplet mais je n'arrive pas à trouver.
    Pourriez-vous m'aiguiller ?

    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
    Private Sub Report_Activate()
     
    Dim fichier As String
     
    fichier = Application.CurrentProject.Path & "\archives_factures\Commissions\" & Format([date_com], "yyyy-mm") & " - Factures commissions " & Format([date_com], "mmmm yyyy") & " (" & num_com & ")" & ".pdf"
     
     
    ' 1 seul PDF avec plusieurs clients (fonctionne)
    'DoCmd.OutputTo acOutputReport, , acFormatPDF, fichier, False
     
    '1 PDF par client (ne fonctionne pas)
    DoCmd.OutputTo acOutputReport, , acFormatPDF, fichier, False, "num_com=" & num_com
     
    End Sub

  2. #2
    Expert éminent
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 261
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 261
    Points : 6 557
    Points
    6 557
    Par défaut
    Salut
    Une piste via ce lien ou ce lien.
    @+
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  3. #3
    Membre du Club
    Inscrit en
    Août 2006
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 126
    Points : 49
    Points
    49
    Par défaut
    J'ai regardé mais j'avoue que c'est trop compliqué pour mon petit cerveau

    Je vais continuer à chercher...

  4. #4
    Expert éminent
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 261
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 261
    Points : 6 557
    Points
    6 557
    Par défaut
    Salut
    A tester et à adapter à votre environnement.
    Je passe via un btncommande dans un form
    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
    27
    28
    29
    Private Sub btnExportpdf0_Click()
    Dim dbs As DAO.Database
    Dim rst As DAO.Recordset
    Dim strChemin As String
    Dim strFichier As String
    Dim strSql As String
    Const strReportName = "nom de l etat" ' mettre à jour le nom de l'état
     
    strChemin = Application.CurrentProject.Path & "\archives_factures\Commissions\"
     
    strSql = "SELECT DISTINCT num_com, date_com, etc." _
    & " FROM tbl_com"
     
    Set dbs = CurrentDb()
    Set rst = dbs.OpenRecordset(strSql, dbOpenDynaset)
     
    If rst.RecordCount = 0 Then Exit Sub
        rst.MoveLast
        rst.MoveFirst
        Do Until rst.EOF
            strFichier = Format([date_com], "yyyy-mm") & " - Factures commissions " & Format([date_com], "mmmm yyyy")
            strFichier = strFichier & " - " & rst("num_com") & ".pdf"
            DoCmd.OutputTo acOutputReport, strReportName, acFormatPDF, strChemin & strFichier
            DoCmd.Close acReport, strReportName
            DoEvents
        rst.MoveNext
        Loop
    Application.FollowHyperlink strChemin 'ouvre le dossier destination *.pdf
    End Sub
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

Discussions similaires

  1. [AC-2016] créer un pdf par page d'état
    Par dodo28 dans le forum IHM
    Réponses: 6
    Dernier message: 25/03/2019, 16h04
  2. Réponses: 7
    Dernier message: 13/12/2018, 17h11
  3. Créer un code vba qui fait une somme par client
    Par ayudame_joel dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 02/07/2018, 12h04
  4. [Toutes versions] Créer un formulaire (bon de commande) PDF par commande d'une liste
    Par Carlycox dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 28/05/2013, 16h11
  5. [FPDF] Créer un PDF et l'envoyer par email avec PHPMailer
    Par nico33307 dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 12/12/2005, 23h49

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