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 :

Publipostage de données Access dans Word [AC-2003]


Sujet :

VBA Access

  1. #1
    Candidat au Club
    Inscrit en
    Décembre 2007
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 6
    Points : 2
    Points
    2
    Par défaut Publipostage de données Access dans Word
    Bonjour,
    En procédant de la manière suivante:
    1- Créer une base de données dans Access, contenant la table A;
    2- Créer un fichier word et publiposter les données de A dans ce dernier;
    3- Créer un formulaire à partir de la table A, et y ajouter un bouton;
    4- Mettre le code cité ici (http://access.developpez.com/faq/?page=Word), dans l'évènement clique du bouton.

    Résultat, quand je clique sur le bouton, j'ai l'erreur " Access ne peut pas trouver la macro 'Dim wdapp As Word'."

    J'essaie de contourner le problème, en faisant ça:
    1-Créer un module où je mets:
    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
    Sub Fusion()
     
    Dim wdapp As Word.Application
     
    'Démarrer Word
    Set wdapp = CreateObject("Word.application")
    With wdapp
           .Visible = True
     
          'ouvrir le document
          .Documents.Open "Chemincompletdudocumentwordàouvrir"
     
          'Diriger le publipostage vers un nouveau document
         .ActiveDocument.MailMerge.Execute
    End With
     
    'fermer et libérer les objets
    Set wdapp = Nothing
    End Sub
    Quand j'exécute ce module, le fichier word en question s'ouvre, mais il n y a pas de fusion et j'ai l'erreur ('4605' Cette méthode ou propriété n'est pas disponible car le document n'est pas un document principal de fusion.)

    Qu'est ce que je peux faire pour résoudre ce problème? Et merci beaucoup d'avance pour vos réponses.

  2. #2
    Membre actif
    Inscrit en
    Juin 2010
    Messages
    150
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 150
    Points : 210
    Points
    210
    Par défaut
    Bonjour,

    Voici ce que moi j'ai utilisé pour mon publipostage:
    Code vba : 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
     
    Sub MergeFacade()
    'Déclaration des variables
        Dim db As DAO.database
        Dim query As DAO.QueryDef
        Dim rs As DAO.Recordset
        Dim oAppli
        Dim oDoc
    'Affectation des objets d'accès aux données
        Set db = Application.CurrentDb
        Set query = db.QueryDefs("RequêtePublipostageFaçade")
        query.Parameters("PARAM_Ville").Value = Forms!CréationConvention!Modifiable21
        Set rs = query.OpenRecordset
        Set oAppli = CreateObject("Word.Application")
        Set oDoc = oAppli.Documents.Open("\\AccessFusionFaçade.dotm", False, True, False)
        oAppli.Visible = True
    'Boucle pour la récupération de données
        'While Not rs.EOF
            oDoc.SaveAs ("\\" & rs.Fields("Parcelle") & "-" & rs.Fields("Nom") & ".doc")
            oDoc.BookMarks("Commune").Range.Text = rs.Fields("Commune")
            oDoc.BookMarks("Nom").Range.Text = rs.Fields("Nom")
            oDoc.BookMarks("Commune2").Range.Text = rs.Fields("Commune")
            oDoc.BookMarks("Adresse").Range.Text = rs.Fields("Adresse")
         Wend
            oDoc.Save
        'Wend
    'Libération des objets
        rs.Close
        Set rs = Nothing
        db.Close
        Set db = Nothing
        End Sub

    Je ne suis jamais parvenue à déclarer un fichier comme (Dim as Word.application). Mais comme ça, ça marche

  3. #3
    Membre régulier

    Profil pro
    Inscrit en
    Avril 2004
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 95
    Points : 87
    Points
    87
    Par défaut
    Salut,

    Tu as bien mis ton code comme ça dans la partie VBA du formulaire ?

    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
    Private Sub Commande0_Click()
    'Voici pour la déclaration du code:
    Dim wdapp As Word.Application
     
    'Démarrer Word
    Set wdapp = CreateObject("Word.application")
    With wdapp
           .Visible = True
     
          'ouvrir le document
          .Documents.Open "Chemincompletdudocumentwordàouvrir"
     
          'Diriger le publipostage vers un nouveau document
         .ActiveDocument.MailMerge.Execute
    End With
     
    'fermer et libérer les objets
    Set wdapp = Nothing
    End Sub
    Est-ce que tu as bien activé la bibliothèque Microsoft Word 11 Object Library ?

    Coin.

  4. #4
    Candidat au Club
    Inscrit en
    Décembre 2007
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Salut,
    Oui j'ai déjà coché la case relative à la bibliothèque Microsoft Word 11, dans Outils/Références, et quand je mets le code dans la partie VB du Form (Voir Image) et en cliquant cette fois ci sur le bouton, j'ai le message d'erreur ('4605' Cette méthode ou propriété n'est pas disponible car le document n'est pas un document principal de fusion.(Voir Image)), juste après l'ouverture du document word.
    Images attachées Images attachées   

  5. #5
    Membre régulier

    Profil pro
    Inscrit en
    Avril 2004
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 95
    Points : 87
    Points
    87
    Par défaut
    Je peux me tromper, mais il me semble que c'est pas le chemin de ton fichier word, non ?

    Le chemin à mettre est celui du word où est enregistré le publipostage.

    Essaye de changer le chemin.

    Coin.

  6. #6
    Candidat au Club
    Inscrit en
    Décembre 2007
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Oui c'est le chemin du fichier word, je l'ai nomé 'bd1' comme la base.

  7. #7
    Membre régulier

    Profil pro
    Inscrit en
    Avril 2004
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 95
    Points : 87
    Points
    87
    Par défaut
    Ok. Mais ça ne devrait pas être bd1.doc ?

    Si ça ne change toujours rien, note la ligne qui est en jaune lorsque tu cliques sur débogage.

    Coin.

  8. #8
    jojo5650
    Invité(e)
    Par défaut il faut referencer word dans le VBA
    dans vba ouvre OUTILS REFERENCES et valide microsoft word 11. (office2003)
    puis redémarre ton projet et teste

    Citation Envoyé par developp Voir le message
    Bonjour,
    En procédant de la manière suivante:
    1- Créer une base de données dans Access, contenant la table A;
    2- Créer un fichier word et publiposter les données de A dans ce dernier;
    3- Créer un formulaire à partir de la table A, et y ajouter un bouton;
    4- Mettre le code cité ici (http://access.developpez.com/faq/?page=Word), dans l'évènement clique du bouton.

    Résultat, quand je clique sur le bouton, j'ai l'erreur " Access ne peut pas trouver la macro 'Dim wdapp As Word'."

    J'essaie de contourner le problème, en faisant ça:
    1-Créer un module où je mets:
    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
    Sub Fusion()
     
    Dim wdapp As Word.Application
     
    'Démarrer Word
    Set wdapp = CreateObject("Word.application")
    With wdapp
           .Visible = True
     
          'ouvrir le document
          .Documents.Open "Chemincompletdudocumentwordàouvrir"
     
          'Diriger le publipostage vers un nouveau document
         .ActiveDocument.MailMerge.Execute
    End With
     
    'fermer et libérer les objets
    Set wdapp = Nothing
    End Sub
    Quand j'exécute ce module, le fichier word en question s'ouvre, mais il n y a pas de fusion et j'ai l'erreur ('4605' Cette méthode ou propriété n'est pas disponible car le document n'est pas un document principal de fusion.)

    Qu'est ce que je peux faire pour résoudre ce problème? Et merci beaucoup d'avance pour vos réponses.

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    427
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 427
    Points : 520
    Points
    520
    Par défaut
    Bonjour,

    Regarde ici http://heureuxoli.developpez.com/publipostage/

    A mon avis ta préparation du document ne doit pas être bonne.

  10. #10
    Candidat au Club
    Inscrit en
    Décembre 2007
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Faut que je précise également que à chaque fois que je veux ouvrir le document Word destiné à la fusion, j'ai un message de confirmation d'une commande SQL (Voir l'image), c'est peut être cette fenêtre là, qui est à l'origine de mon problème. Avoir ce message est normal??
    @Coin,
    Ajouter l'extension (.doc) ne change rien, et la ligne jaune quand je débogue est: .ActiveDocument.MailMerge.Execute.
    Images attachées Images attachées  

  11. #11
    jojo5650
    Invité(e)
    Par défaut voici ce que j'utilise
    C'est un mailing de courriers word avec comme source un fichier excell et où l'on ferme automatiquement le fichier word qui génère le mailling, on peut aussi imprimer directement et fermer automatiquement les dits fichiers.
    Remarque le fichier excell est généré depuis access
    dans l'appel de fonction inlist il faut comparer le nom du document actif à ceux de vos textes vierges.
    ex: chez moi tous les textes vierges commence par "P26"
    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
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
     
    Public Function Active_Word(cBronSource, cSourceData As String, cSQL As String, Optional lPrint As Boolean = False) As Boolean
       Dim oApp As Object, cErr As String, aDoc, lFlag As String, cConnection As String * 255, j As Integer
       On Error GoTo Err_Active_Word
       Active_Word = False
       cConnection = Left("Provider=Microsoft.Jet.OLEDB.4.0;Password="""";User ID=Admin;Data Source=" & cSourceData & ";Mode=Read;Extended Properties=""HDR=YES;IMEX=1;"";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB:Database Passwo", 255)
       Set oApp = CreateObject("Word.Application")
       oApp.Visible = Not lPrint
       oApp.Documents.Open filename:=cBronSource, ConfirmConversions:=False, _
             ReadOnly:=False, AddToRecentFiles:=False, PasswordDocument:="", _
             PasswordTemplate:="", Revert:=False, WritePasswordDocument:="", _
             WritePasswordTemplate:="", Format:=wdOpenFormatAuto
       With oApp.ActiveDocument.MailMerge
            .OpenDataSource Name:=cSourceData, _
             ConfirmConversions:=False, ReadOnly:=False, LinkToSource:=True, _
             AddToRecentFiles:=False, PasswordDocument:="", PasswordTemplate:="", _
             WritePasswordDocument:="", WritePasswordTemplate:="", Revert:=False, _
             Format:=wdOpenFormatAuto, Connection:=cConnection, SQLStatement:=cSQL, SQLStatement1 _
             :="", SubType:=wdMergeSubTypeAccess
             .Destination = wdSendToNewDocument
             .SuppressBlankLines = True
             With .DataSource
                .FirstRecord = wdDefaultFirstRecord
                .LastRecord = wdDefaultLastRecord
             End With
             .Execute Pause:=True
       End With
       Do
          'boucle pour enlever de la fenêtre word les documents types
          lFlag = True
          'MsgBox "Fermeture des documents vierges"
          'Update_MsgBox Donne_Message(175)
          For Each aDoc In oApp.Documents
             If InList("P26;BRI;ESE;DOC", UCase(Left(aDoc.Name, 3))) Then
                oApp.Documents(aDoc.Name).Activate
                'Update_MsgBox "Fermeture du document " & aDoc.Name
                'Update_MsgBox Donne_Message(174) & aDoc.Name
                oApp.ActiveDocument.Close False
                lFlag = False
                Exit For
             End If
          Next aDoc
       Loop Until lFlag
       If lPrint Then ' si impresion directe alors fermeture des documents
          For j = oApp.Documents.Count To 1 Step -1
             oApp.Documents(j).Activate
             'Update_MsgBox "Impression du document " & oApp.Documents(1).Name & " vers l'imprimante par défaut"
             'Update_MsgBox Replace(Donne_Message(176), "%1%", oApp.Documents(j).Name)
             oApp.Documents(j).PrintOut
             oApp.ActiveDocument.Close False
             DoEvents
          Next j
       End If
       Active_Word = True
    Exit_Err_Active_Word:
       Set oApp = Nothing
       'Close_MsgBox
       Exit Function
    Err_Active_Word:
       'Ouvre_MsgBox "Erreur ouverture word " & Err.Number, " " & Err.Description, 1, 5
       cErr = "WORD ERR" & vbCrLf & "Txt Source := " & cBronSource & vbCrLf & _
              "Data source := " & cSourceData & vbCrLf & _
              "FILTRE SQL := " & cSQL
       'Rec_err Err.Number, Err.Description, Err.Source, cErr
       Resume Next
    End Function
     
    Public Function InList(cOu As String, cQuoi As String) As Boolean
       Dim aTable, j As Integer
       aTable = Split(cOu, ";")
       For j = 0 To UBound(aTable, 1)
          If cQuoi = aTable(j) Then InList = True: Exit Function
       Next j
       InList = False
    End Function

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    427
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 427
    Points : 520
    Points
    520
    Par défaut
    Citation Envoyé par developp Voir le message
    Faut que je précise également que à chaque fois que je veux ouvrir le document Word destiné à la fusion, j'ai un message de confirmation d'une commande SQL (Voir l'image), c'est peut être cette fenêtre là, qui est à l'origine de mon problème. Avoir ce message est normal??
    Le message en tant que tel n'est pas problématique, par contre ta façon d'enregistrer le doc joue sur le fait qu'il soit ou pas un document principal de fusion.

    Suis la procédure de création décrite dans le tuto et reteste la publipostage.

  13. #13
    Candidat au Club
    Inscrit en
    Décembre 2007
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Je poursuis à la lettre la procédure décrite ici >> http://heureuxoli.developpez.com/publipostage/, pour la création du document principal de fusion, mais toujours rien,

  14. #14
    Membre à l'essai
    Inscrit en
    Mai 2005
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 30
    Points : 17
    Points
    17
    Par défaut
    Bonjour,

    Je suis sous Office 2003 et je souhaiterai utiliser l'outil de fusion et publipostage à partir d'une base de données Access.

    J'ai trouvé comment faire une fusion avec une table ou une requête mais je souhaiterai faire autre chose. Je m'explique.

    On va dire que j'ai les tables suivantes avec les champs suivants:
    - riverain (ID, adresse, tel, ville ...)
    - PV_mesures (ID, resultat_mesure, piece, dimension_piece ...)
    - menuiseries_a_remplacer (ID, type_f_rp, materiau_f_rp, prix_f_rp ...)
    - menuiseries_a_rembourser (ID, type_f_rb, materiau_f_rb, prix_f_rb...)

    Dans ma base, j'ai un identifiant unique ID qui permettent de lier des tables.
    Je peux faire plusieurs mesures chez un riverain, aussi, je peux avoir plusieurs menuiseries à remplacer et plusieurs menuiseries à rembourser.

    Dans Word, je fais un rapport par riverain, je souhaiterai pour les menuiseries avoir un tableau qui liste les menuiseries à remplacer, qu'il y en ai 1 ou 30 et la même chose pour les menuiseries à rembourser.

    Enfin, je voudrais établir tous les PV de mesures en fin de rapport, qu'il y ai 1 ou 5 mesures.

    J'espère avoir été clair et vous remercie d'avance pour vos contributions !

  15. #15
    Membre actif

    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    120
    Détails du profil
    Informations personnelles :
    Âge : 61
    Localisation : Luxembourg

    Informations forums :
    Inscription : Septembre 2007
    Messages : 120
    Points : 257
    Points
    257
    Par défaut Publipostage de données Access dans Word
    Bonjour,

    J'avais déjà publié une méthode. Dans ton code, il manque la source de données :

    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
    Private Sub AutoPublipostage()
     
       'Chemin d'accès au document Word de publipostage
       Const LettreType = "C:\Mes_Documents\Lettre_Type.doc"
     
       'Déclaration de la variable de l'Objet Word
       Dim WdLettreType As Word.Application
     
          'Partie publipostage
          Set WdLettreType = New Word.Application
             With WdLettreType
                'Ouvrir lettre type
                   .Documents.Open LettreType
     
    '===============================================
     
                'Lier la lettre type à la source de données Access
                   .ActiveDocument.MailMerge.OpenDataSource _
                   Name:=CurrentProject.FullName, _
                   SQLStatement:="SELECT * FROM [RqtLettreType]" ‘Ou requête dynamique entre guillemet
     
    '===============================================
     
                'La fusion doit se faire sur un nouveau document
                   .ActiveDocument.MailMerge.Destination = wdSendToNewDocument
                'Exécuter la fusion
                   .ActiveDocument.MailMerge.Execute
             End With
     
          Set WdLettreType = Nothing
       MsgBox "Publipostage terminé !", vbOKOnly + vbInformation, "Fusion"
     
    End Sub
    Je l'utilise régulièrement et fonctionne bien.

    A+

  16. #16
    jojo5650
    Invité(e)
    Par défaut
    j'ai déjà posté une réponse sur cette même question mais l'avez-vous testeé?
    Je repose le code à mettre dans un module vba
    Rôles des variables à passer.

    cBronsource := "l'adresse complète du document vierge à publiposter"
    cSourceData:= "l'adresse complète de la source des données"
    csql := "le codeSQL pour accéder aux données dans les datas"
    Lprint := si true alors impression automatique

    Ce code est utilisé dans un département d'expédition de courrier et fonctionne.
    remarque:
    Je vois que vous lié word à une db access mais si cette db est protégée par un password il faut aussi l'inclure dans les liaisons.

    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
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
     
    Public Function Active_Word(cBronSource, cSourceData As String, cSQL As String, Optional lPrint As Boolean = False) As Boolean
       Dim oApp As Object, cErr As String, aDoc, lFlag As String, cConnection As String * 255, j As Integer
       On Error GoTo Err_Active_Word
       Active_Word = False
       cConnection = Left("Provider=Microsoft.Jet.OLEDB.4.0;Password="""";User ID=Admin;Data Source=" & cSourceData & ";Mode=Read;Extended Properties=""HDR=YES;IMEX=1;"";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB:Database Passwo", 255)
       Set oApp = CreateObject("Word.Application")
       oApp.Visible = Not lPrint
       oApp.Documents.Open filename:=cBronSource, ConfirmConversions:=False, _
             ReadOnly:=False, AddToRecentFiles:=False, PasswordDocument:="", _
             PasswordTemplate:="", Revert:=False, WritePasswordDocument:="", _
             WritePasswordTemplate:="", Format:=wdOpenFormatAuto
       With oApp.ActiveDocument.MailMerge
            .OpenDataSource Name:=cSourceData, _
             ConfirmConversions:=False, ReadOnly:=False, LinkToSource:=True, _
             AddToRecentFiles:=False, PasswordDocument:="", PasswordTemplate:="", _
             WritePasswordDocument:="", WritePasswordTemplate:="", Revert:=False, _
             Format:=wdOpenFormatAuto, Connection:=cConnection, SQLStatement:=cSQL, SQLStatement1 _
             :="", SubType:=wdMergeSubTypeAccess
             .Destination = wdSendToNewDocument
             .SuppressBlankLines = True
             With .DataSource
                .FirstRecord = wdDefaultFirstRecord
                .LastRecord = wdDefaultLastRecord
             End With
             .Execute Pause:=True
       End With
       Do
          'boucle pour enlever de la fenêtre word les documents types
          lFlag = True
          'MsgBox "Fermeture des documents vierges"
          'Update_MsgBox Donne_Message(175)
          For Each aDoc In oApp.Documents
             If InList("P26;BRI;ESE;DOC", UCase(Left(aDoc.Name, 3))) Then
                oApp.Documents(aDoc.Name).Activate
                'Update_MsgBox "Fermeture du document " & aDoc.Name
                'Update_MsgBox Donne_Message(174) & aDoc.Name
                oApp.ActiveDocument.Close False
                lFlag = False
                Exit For
             End If
          Next aDoc
       Loop Until lFlag
       If lPrint Then ' si impresion directe alors fermeture des documents
          For j = oApp.Documents.Count To 1 Step -1
             oApp.Documents(j).Activate
             'Update_MsgBox "Impression du document " & oApp.Documents(1).Name & " vers l'imprimante par défaut"
             'Update_MsgBox Replace(Donne_Message(176), "%1%", oApp.Documents(j).Name)
             oApp.Documents(j).PrintOut
             oApp.ActiveDocument.Close False
             DoEvents
          Next j
       End If
       Active_Word = True
    Exit_Err_Active_Word:
       Set oApp = Nothing
       'Close_MsgBox
       Exit Function
    Err_Active_Word:
       'Ouvre_MsgBox "Erreur ouverture word " & Err.Number, " " & Err.Description, 1, 5
       cErr = "WORD ERR" & vbCrLf & "Txt Source := " & cBronSource & vbCrLf & _
              "Data source := " & cSourceData & vbCrLf & _
              "FILTRE SQL := " & cSQL
       'Rec_err Err.Number, Err.Description, Err.Source, cErr
       Resume Next
    End Function
     
    Public Function InList(cOu As String, cQuoi As String) As Boolean
       Dim aTable, j As Integer
       aTable = Split(cOu, ";")
       For j = 0 To UBound(aTable, 1)
          If cQuoi = aTable(j) Then InList = True: Exit Function
       Next j
       InList = False
    End Function
     
    jojo5650

  17. #17
    Membre actif

    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    120
    Détails du profil
    Informations personnelles :
    Âge : 61
    Localisation : Luxembourg

    Informations forums :
    Inscription : Septembre 2007
    Messages : 120
    Points : 257
    Points
    257
    Par défaut Publipostage de données Access dans Word
    Bonjour,

    Je pars du principe que j'ai accès à la DB car l'exportation des données provient de la DB vers un document Word et non l'inverse.

    A+

  18. #18
    Candidat au Club
    Inscrit en
    Décembre 2007
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Je vous remercie beaucoup pour toutes vos réponses et pour la bonne volonté à vouloir m'aider dont vous avez fait preuve,et comme j'ai pu résoudre mon problème, je mets alors ce post comme résolu.

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

Discussions similaires

  1. [AC-2007] transferer des données access dans word
    Par Daguie dans le forum Access
    Réponses: 1
    Dernier message: 07/07/2010, 12h19
  2. "Exporter" feuille de données access dans word
    Par cberthol dans le forum VBA Access
    Réponses: 2
    Dernier message: 06/12/2007, 14h03
  3. données access dans macro word
    Par Heureux-oli dans le forum VBA Access
    Réponses: 2
    Dernier message: 30/11/2006, 13h15
  4. Réponses: 2
    Dernier message: 31/03/2006, 11h29
  5. Réponses: 3
    Dernier message: 07/11/2005, 16h39

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