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 :

Bug persistant Exporter Etat en PDF


Sujet :

VBA Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    103
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Mars 2008
    Messages : 103
    Points : 60
    Points
    60
    Par défaut Bug persistant Exporter Etat en PDF
    Bonjour à tous,

    j'ai suivi le tutorial de cafeine pour exporter les états en PDF à l'aide de PDFCreator.
    j'ai un bug récalcitrant que je n'arrive pas à enlever.

    en effet, à chaque fois que je créé un PDF il me met une erreur:

    "3270 - Propriété non trouvée"

    en utilisant le pas à pas détaillé il me précise que l'erreur provient du code de la fonction ScanPDFFiles

    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
     
    Sub ScanPDFfiles()
    ' traitement des fichiers en file d'attente
     
    Dim strPath As String, currFile As String
    Dim rec As DAO.Recordset
    Dim fso As New FileSystemObject
    Dim intCount As Integer
     
    On Error GoTo scanPDF
     
    intCount = 0
    strPath = CurrentDb.Properties("workPath")
    Set rec = CurrentDb.OpenRecordset("SELECT * FROM tblPDFdoc WHERE done = False ORDER BY tim;", dbOpenDynaset)
    Do While Not rec.EOF
        ' fonction pour trouver le fichier dont la date est la plus proche
        '  de la date de demande d'édition
        currFile = GetFirstFileName(rec!tim)
        If Len(currFile) > 0 Then
            ' si le fichier a été trouvé on le renomme
            fso.MoveFile strPath & currFile, strPath & rec!doc & IIf(intCount = 0, "", intCount) & ".pdf"
            intCount = 0
            ' mise à jour de la table de la file d'attente
            rec.Edit
                rec!done = True
            rec.Update
        End If
        rec.MoveNext
    Loop
     
    rec.Close
    Set rec = Nothing
    Set fso = Nothing
     
    Exit Sub
     
    ' traitement d'erreurs
    scanPDF:
    If Err.Number = 58 Then
        ' si le fichier existe déjà
        '  on rajoute un numéro au nom ...
        intCount = intCount + 1
        Resume
    Else
        MsgBox Err.Number & " - " & Err.Description
        Err.Clear
        Resume Next
    End If
     
    Set fso = Nothing
     
    End Sub
    j'ai fait une recherche et trouvé un sujet parlant de ce problème mais je n'ai pas trouvé de solution.

    Merci de votre aide
    Maxime

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    103
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Mars 2008
    Messages : 103
    Points : 60
    Points
    60
    Par défaut
    A force de chercher, on fini par trouver!
    Ayant passé la journée sur ce code j'ai fini par comprendre et acquérir quelques notions sur le VBA.

    j'ai modifier le code en fonction de ce que je souhaite avoir et voila le résultat:

    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
    30
    31
    32
    33
    34
     
    Sub ScanPDFfiles()
    ' traitement des fichiers en file d'attente
     
    Dim strPath As String, currFile As String
    Dim rec As DAO.Recordset
    Dim fso As New FileSystemObject
    Dim intCount As Integer
     
    On Error GoTo scanPDF
     
    intCount = 0
     
    Set rec = Nothing
    Set fso = Nothing
     
    Exit Sub
     
    ' traitement d'erreurs
    scanPDF:
    If Err.Number = 58 Then
        ' si le fichier existe déjà
        '  on rajoute un numéro au nom ...
        intCount = intCount + 1
        Resume
    Else
        MsgBox Err.Number & " - " & Err.Description
        Err.Clear
        Resume Next
    End If
     
    Set fso = Nothing
     
    End Sub
    je n'ai plus d'erreur, donc je suis content

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 25/06/2009, 15h36
  2. [VBA97]Probleme export etat access 97 en PDF
    Par RootsInternationnal dans le forum VBA Access
    Réponses: 3
    Dernier message: 23/02/2009, 10h53
  3. Critère de tri Exportation Etat en PDF
    Par maxime350 dans le forum VBA Access
    Réponses: 1
    Dernier message: 03/04/2008, 13h37
  4. Exporter Etat en format pdf
    Par Philippe GARNIER dans le forum IHM
    Réponses: 2
    Dernier message: 24/10/2006, 13h39
  5. [CrystalReports] Exportation Etat au format PDF
    Par PtiBubu dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 06/02/2006, 17h47

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