Salut,

Ce post est à cheval entre le VBA Acess et le VBA Office mais comme le source est dans Access je le poste ici.

J'ai crée un logiciel de CRM sous access à partir duquel je dois lancer une impression d'étiquettes.

J'ai créé un document de fusion sous Word qui puise ses données dans la base access et sur la requête qui va bien.

J'utilise le code suivant pour lancer la fusion :

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
 
'***************************************
Private Sub cmdReport_Click()
'***************************************
'On Error GoTo Err_cmdPreview_Click
    Call prepSQLQ
    Dim wdapp As word.Application
    'Démarrer Word
    Set wdapp = CreateObject("Word.application")
    With wdapp
        .Visible = True
        'ouvrir le document
        .Documents.Open cstWordTemplate
        'Diriger le publipostage vers un nouveau document
        .ActiveDocument.MailMerge.Execute
    End With
 
'fermer et libérer les objets
Set wdapp = Nothing
Exit_cmdPreview_Click:
    Exit Sub
Err_cmdPreview_Click:
    MsgBox Err.Description
    Resume Exit_cmdPreview_Click
End Sub
Malheureusement, lors de l'exécution, j'ai le message d'erreur :

Erreur d'exécution '4605'
Cette méthode ou propriété n'est pas disponible car le document n'est pas un document principal de fusion.


Or, à moins d'avoir fait une mauvaise manipulation (plusieurs fois) s'en est un.

Quelqu'un pourrait-il m'aider ?

D'avance merci

Laurent Jordi
http://www.ezlogic.mc
http://www.laurentjordi.net

P.S. Petit bug du forum : Access ne peut être utilisé dans le titre car il y a 2c et 2s et c'est interdit par l'interface...

Message : Le titre de votre discussion ne doit pas comporter plus de 2 caractères identiques consécutifs.