J'ai une petite procedure qui lance un document principal de fusion Word
en le reliant à une table ou à une requête et qui m'avait donné toute
satisfaction pendant longtemps.
Jusqu'au jour où certains postes sont passés à Word 2002.
Bon, déjà, après ouverture de Word, une boîte de dialogue demande à
l'utilisateur de "Sélectionner un Tableau".
Comme l'écrit l'ami Hervé Inisan dans son EXCELLENT Guide de Référence
Access 2002, "une nouvelle boîte de dialogue liste alors toutes les tables
et requêtes de votre base Access (ou presque)."
Pourquoi "presque" ?
Il me manque effectivement quelques requêtes sélection dans la liste... et
justement celle dont j'ai besoin.
J'ai essayé manuellement, en ouvrant le document principal, puis en
ouvrant la source de données...
Même chose...
J'ai bien remplacé la référence Microsoft Word 9.0 par Microsoft Word 10.0
Voici un petit bout de mon code, le paramètre strConnection contient des
trucs du genre "Table NomTable" ou "Query Nomrequête"
Sub Publipostage (strNomDocPrincipal as String, strConnection as string)
Dim wApp As Word.Application
Dim D1 As Word.Document, strNomBase As String
Set wApp = CreateObject("Word.Application")
wApp.Visible = True
Set D1 = wApp.Documents.Open(Application.CurrentProject.Path & "\" &
strNomDocPrincipal)
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Raymond [mvp]
Bonsoir.
A mon avis il te manque le D1.MailMerge.DataSource.QueryString = _ "SELECT * FROM [Clients] WHERE (([Client_Suivi_Mensuel] = -1))" & ""
ce qui évitera l'ouverture de la boite pour demander la requête.
Tu trouveras des idées sur la page: http://access.seneque.free.fr/publipostage.htm Cas N° 2 -- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Evaro" a écrit dans le message de news:
Bonjour,
J'ai une petite procedure qui lance un document principal de fusion Word en le reliant à une table ou à une requête et qui m'avait donné toute satisfaction pendant longtemps. Jusqu'au jour où certains postes sont passés à Word 2002. Bon, déjà, après ouverture de Word, une boîte de dialogue demande à l'utilisateur de "Sélectionner un Tableau". Comme l'écrit l'ami Hervé Inisan dans son EXCELLENT Guide de Référence Access 2002, "une nouvelle boîte de dialogue liste alors toutes les tables et requêtes de votre base Access (ou presque)." Pourquoi "presque" ? Il me manque effectivement quelques requêtes sélection dans la liste... et justement celle dont j'ai besoin. J'ai essayé manuellement, en ouvrant le document principal, puis en ouvrant la source de données... Même chose... J'ai bien remplacé la référence Microsoft Word 9.0 par Microsoft Word 10.0 Voici un petit bout de mon code, le paramètre strConnection contient des trucs du genre "Table NomTable" ou "Query Nomrequête"
Sub Publipostage (strNomDocPrincipal as String, strConnection as string)
Dim wApp As Word.Application
Dim D1 As Word.Document, strNomBase As String
Set wApp = CreateObject("Word.Application")
wApp.Visible = True
Set D1 = wApp.Documents.Open(Application.CurrentProject.Path & "" & strNomDocPrincipal)
D1.MailMerge.Destination = wdSendToNewDocument Set wApp = Nothing
Exit Sub
Y a-t-il un moyen de zapper cette boîte de dialogue ?
Dois-je vous préciser que les postes qui sont équipés de word 2000 fonctionnent sans problème ?
Pourquoi tant de haine de la part de Bill ?
Merci d'avance...
-- @ + Etienne Charte du forum: http://users.skynet.be/mpfa/charte.htm
Bonsoir.
A mon avis il te manque le
D1.MailMerge.DataSource.QueryString = _
"SELECT * FROM [Clients] WHERE (([Client_Suivi_Mensuel] = -1))" & ""
ce qui évitera l'ouverture de la boite pour demander la requête.
Tu trouveras des idées sur la page:
http://access.seneque.free.fr/publipostage.htm Cas N° 2
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Evaro" <pointdoc09@free.fr> a écrit dans le message de
news:elljIVR4DHA.2276@TK2MSFTNGP10.phx.gbl...
Bonjour,
J'ai une petite procedure qui lance un document principal de fusion Word
en le reliant à une table ou à une requête et qui m'avait donné toute
satisfaction pendant longtemps.
Jusqu'au jour où certains postes sont passés à Word 2002.
Bon, déjà, après ouverture de Word, une boîte de dialogue demande à
l'utilisateur de "Sélectionner un Tableau".
Comme l'écrit l'ami Hervé Inisan dans son EXCELLENT Guide de Référence
Access 2002, "une nouvelle boîte de dialogue liste alors toutes les tables
et requêtes de votre base Access (ou presque)."
Pourquoi "presque" ?
Il me manque effectivement quelques requêtes sélection dans la liste... et
justement celle dont j'ai besoin.
J'ai essayé manuellement, en ouvrant le document principal, puis en
ouvrant la source de données...
Même chose...
J'ai bien remplacé la référence Microsoft Word 9.0 par Microsoft Word 10.0
Voici un petit bout de mon code, le paramètre strConnection contient des
trucs du genre "Table NomTable" ou "Query Nomrequête"
Sub Publipostage (strNomDocPrincipal as String, strConnection as string)
Dim wApp As Word.Application
Dim D1 As Word.Document, strNomBase As String
Set wApp = CreateObject("Word.Application")
wApp.Visible = True
Set D1 = wApp.Documents.Open(Application.CurrentProject.Path & "" &
strNomDocPrincipal)
A mon avis il te manque le D1.MailMerge.DataSource.QueryString = _ "SELECT * FROM [Clients] WHERE (([Client_Suivi_Mensuel] = -1))" & ""
ce qui évitera l'ouverture de la boite pour demander la requête.
Tu trouveras des idées sur la page: http://access.seneque.free.fr/publipostage.htm Cas N° 2 -- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Evaro" a écrit dans le message de news:
Bonjour,
J'ai une petite procedure qui lance un document principal de fusion Word en le reliant à une table ou à une requête et qui m'avait donné toute satisfaction pendant longtemps. Jusqu'au jour où certains postes sont passés à Word 2002. Bon, déjà, après ouverture de Word, une boîte de dialogue demande à l'utilisateur de "Sélectionner un Tableau". Comme l'écrit l'ami Hervé Inisan dans son EXCELLENT Guide de Référence Access 2002, "une nouvelle boîte de dialogue liste alors toutes les tables et requêtes de votre base Access (ou presque)." Pourquoi "presque" ? Il me manque effectivement quelques requêtes sélection dans la liste... et justement celle dont j'ai besoin. J'ai essayé manuellement, en ouvrant le document principal, puis en ouvrant la source de données... Même chose... J'ai bien remplacé la référence Microsoft Word 9.0 par Microsoft Word 10.0 Voici un petit bout de mon code, le paramètre strConnection contient des trucs du genre "Table NomTable" ou "Query Nomrequête"
Sub Publipostage (strNomDocPrincipal as String, strConnection as string)
Dim wApp As Word.Application
Dim D1 As Word.Document, strNomBase As String
Set wApp = CreateObject("Word.Application")
wApp.Visible = True
Set D1 = wApp.Documents.Open(Application.CurrentProject.Path & "" & strNomDocPrincipal)
D1.MailMerge.Destination = wdSendToNewDocument Set wApp = Nothing
Exit Sub
Y a-t-il un moyen de zapper cette boîte de dialogue ?
Dois-je vous préciser que les postes qui sont équipés de word 2000 fonctionnent sans problème ?
Pourquoi tant de haine de la part de Bill ?
Merci d'avance...
-- @ + Etienne Charte du forum: http://users.skynet.be/mpfa/charte.htm
Evaro
Bonjour Raymond, Merci pour ta réponse, avant de poster j'avais bien parcouru plusieurs sites dont le tien, mais trop rapidement. J'ai bien recopié le code de ton cas N° 2 mais ça ne résoud pas mon problème car la boîte de dialogue s'ouvre sur la commande : .ActiveDocument.MailMerge.OpenDataSource Name:=strAppname.... donc avant le : .ActiveDocument.MailMerge.DataSource.QueryString = _
Par contre, effectivement, la boîte de dialogue ne s'ouvre pas lorsque je renseigne le paramètre sqlStatement:= "SELECT * From MaTable" Mais alors le lien n'est pas établi entre le document principal et la source de données (dans Word l'icône ajouter un champ de fusion n'est pas disponible). Merci Etienne.
"Raymond [mvp]" a écrit dans le message de news:
Bonsoir.
A mon avis il te manque le D1.MailMerge.DataSource.QueryString = _ "SELECT * FROM [Clients] WHERE (([Client_Suivi_Mensuel] = -1))" & ""
ce qui évitera l'ouverture de la boite pour demander la requête.
Tu trouveras des idées sur la page: http://access.seneque.free.fr/publipostage.htm Cas N° 2 --
Bonjour Raymond,
Merci pour ta réponse, avant de poster j'avais bien parcouru plusieurs
sites dont le tien, mais trop rapidement.
J'ai bien recopié le code de ton cas N° 2 mais ça ne résoud pas mon
problème car la boîte de dialogue s'ouvre sur la commande :
.ActiveDocument.MailMerge.OpenDataSource Name:=strAppname....
donc avant le :
.ActiveDocument.MailMerge.DataSource.QueryString = _
Par contre, effectivement, la boîte de dialogue ne s'ouvre pas lorsque je
renseigne le paramètre
sqlStatement:= "SELECT * From MaTable"
Mais alors le lien n'est pas établi entre le document principal et la
source de données (dans Word l'icône ajouter un champ de fusion n'est pas
disponible).
Merci
Etienne.
"Raymond [mvp]" <XYZ.access.seneque@free.fr> a écrit dans le message de
news:OX2JNbR4DHA.2888@tk2msftngp13.phx.gbl...
Bonsoir.
A mon avis il te manque le
D1.MailMerge.DataSource.QueryString = _
"SELECT * FROM [Clients] WHERE (([Client_Suivi_Mensuel] = -1))" & ""
ce qui évitera l'ouverture de la boite pour demander la requête.
Tu trouveras des idées sur la page:
http://access.seneque.free.fr/publipostage.htm Cas N° 2
--
Bonjour Raymond, Merci pour ta réponse, avant de poster j'avais bien parcouru plusieurs sites dont le tien, mais trop rapidement. J'ai bien recopié le code de ton cas N° 2 mais ça ne résoud pas mon problème car la boîte de dialogue s'ouvre sur la commande : .ActiveDocument.MailMerge.OpenDataSource Name:=strAppname.... donc avant le : .ActiveDocument.MailMerge.DataSource.QueryString = _
Par contre, effectivement, la boîte de dialogue ne s'ouvre pas lorsque je renseigne le paramètre sqlStatement:= "SELECT * From MaTable" Mais alors le lien n'est pas établi entre le document principal et la source de données (dans Word l'icône ajouter un champ de fusion n'est pas disponible). Merci Etienne.
"Raymond [mvp]" a écrit dans le message de news:
Bonsoir.
A mon avis il te manque le D1.MailMerge.DataSource.QueryString = _ "SELECT * FROM [Clients] WHERE (([Client_Suivi_Mensuel] = -1))" & ""
ce qui évitera l'ouverture de la boite pour demander la requête.
Tu trouveras des idées sur la page: http://access.seneque.free.fr/publipostage.htm Cas N° 2 --
Raymond [mvp]
problème car la boîte de dialogue s'ouvre sur la commande : .ActiveDocument.MailMerge.OpenDataSource Name:=strAppname.... tu as bien indiqué le SQLStatement:= "SELECT * FROM [Clients]",
SQLStatement1:="" ?
difficile à voir à distance.
-- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Evaro" a écrit dans le message de news:
Bonjour Raymond, Merci pour ta réponse, avant de poster j'avais bien parcouru plusieurs sites dont le tien, mais trop rapidement. J'ai bien recopié le code de ton cas N° 2 mais ça ne résoud pas mon problème car la boîte de dialogue s'ouvre sur la commande : .ActiveDocument.MailMerge.OpenDataSource Name:=strAppname.... donc avant le : .ActiveDocument.MailMerge.DataSource.QueryString = _
Par contre, effectivement, la boîte de dialogue ne s'ouvre pas lorsque je renseigne le paramètre sqlStatement:= "SELECT * From MaTable" Mais alors le lien n'est pas établi entre le document principal et la source de données (dans Word l'icône ajouter un champ de fusion n'est pas disponible). Merci Etienne.
problème car la boîte de dialogue s'ouvre sur la commande :
.ActiveDocument.MailMerge.OpenDataSource Name:=strAppname....
tu as bien indiqué le SQLStatement:= "SELECT * FROM [Clients]",
SQLStatement1:="" ?
difficile à voir à distance.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Evaro" <pointdoc09@free.fr> a écrit dans le message de
news:evwoiCa4DHA.2888@tk2msftngp13.phx.gbl...
Bonjour Raymond,
Merci pour ta réponse, avant de poster j'avais bien parcouru plusieurs
sites dont le tien, mais trop rapidement.
J'ai bien recopié le code de ton cas N° 2 mais ça ne résoud pas mon
problème car la boîte de dialogue s'ouvre sur la commande :
.ActiveDocument.MailMerge.OpenDataSource Name:=strAppname....
donc avant le :
.ActiveDocument.MailMerge.DataSource.QueryString = _
Par contre, effectivement, la boîte de dialogue ne s'ouvre pas lorsque je
renseigne le paramètre
sqlStatement:= "SELECT * From MaTable"
Mais alors le lien n'est pas établi entre le document principal et la
source de données (dans Word l'icône ajouter un champ de fusion n'est pas
disponible).
Merci
Etienne.
problème car la boîte de dialogue s'ouvre sur la commande : .ActiveDocument.MailMerge.OpenDataSource Name:=strAppname.... tu as bien indiqué le SQLStatement:= "SELECT * FROM [Clients]",
SQLStatement1:="" ?
difficile à voir à distance.
-- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Evaro" a écrit dans le message de news:
Bonjour Raymond, Merci pour ta réponse, avant de poster j'avais bien parcouru plusieurs sites dont le tien, mais trop rapidement. J'ai bien recopié le code de ton cas N° 2 mais ça ne résoud pas mon problème car la boîte de dialogue s'ouvre sur la commande : .ActiveDocument.MailMerge.OpenDataSource Name:=strAppname.... donc avant le : .ActiveDocument.MailMerge.DataSource.QueryString = _
Par contre, effectivement, la boîte de dialogue ne s'ouvre pas lorsque je renseigne le paramètre sqlStatement:= "SELECT * From MaTable" Mais alors le lien n'est pas établi entre le document principal et la source de données (dans Word l'icône ajouter un champ de fusion n'est pas disponible). Merci Etienne.
Evaro
Bonjour à tous, Ca y est j'ai trouvé... C'est le Paramètre Connexion qui a changé, il est devenu hyper long et complexe. Pour le trouver il suffit d'enregistrer dans Word une macro qui ouvre une source de données Access ; Que n'y ai-je pensé plutôt ! Merci pour tout Etienne.
"Raymond [mvp]" a écrit dans le message de news:
problème car la boîte de dialogue s'ouvre sur la commande : .ActiveDocument.MailMerge.OpenDataSource Name:=strAppname.... tu as bien indiqué le SQLStatement:= "SELECT * FROM [Clients]",
SQLStatement1:="" ?
difficile à voir à distance.
-- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Evaro" a écrit dans le message de news:
Bonjour Raymond, Merci pour ta réponse, avant de poster j'avais bien parcouru plusieurs sites dont le tien, mais trop rapidement. J'ai bien recopié le code de ton cas N° 2 mais ça ne résoud pas mon problème car la boîte de dialogue s'ouvre sur la commande : .ActiveDocument.MailMerge.OpenDataSource Name:=strAppname.... donc avant le : .ActiveDocument.MailMerge.DataSource.QueryString = _
Par contre, effectivement, la boîte de dialogue ne s'ouvre pas lorsque je
renseigne le paramètre sqlStatement:= "SELECT * From MaTable" Mais alors le lien n'est pas établi entre le document principal et la source de données (dans Word l'icône ajouter un champ de fusion n'est pas
disponible). Merci Etienne.
Bonjour à tous,
Ca y est j'ai trouvé...
C'est le Paramètre Connexion qui a changé, il est devenu hyper long et
complexe.
Pour le trouver il suffit d'enregistrer dans Word une macro qui ouvre une
source de données Access ;
Que n'y ai-je pensé plutôt !
Merci pour tout
Etienne.
"Raymond [mvp]" <XYZ.access.seneque@free.fr> a écrit dans le message de
news:uEfWpPb4DHA.1868@TK2MSFTNGP10.phx.gbl...
problème car la boîte de dialogue s'ouvre sur la commande :
.ActiveDocument.MailMerge.OpenDataSource Name:=strAppname....
tu as bien indiqué le SQLStatement:= "SELECT * FROM [Clients]",
SQLStatement1:="" ?
difficile à voir à distance.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Evaro" <pointdoc09@free.fr> a écrit dans le message de
news:evwoiCa4DHA.2888@tk2msftngp13.phx.gbl...
Bonjour Raymond,
Merci pour ta réponse, avant de poster j'avais bien parcouru plusieurs
sites dont le tien, mais trop rapidement.
J'ai bien recopié le code de ton cas N° 2 mais ça ne résoud pas mon
problème car la boîte de dialogue s'ouvre sur la commande :
.ActiveDocument.MailMerge.OpenDataSource Name:=strAppname....
donc avant le :
.ActiveDocument.MailMerge.DataSource.QueryString = _
Par contre, effectivement, la boîte de dialogue ne s'ouvre pas
lorsque je
renseigne le paramètre
sqlStatement:= "SELECT * From MaTable"
Mais alors le lien n'est pas établi entre le document principal et la
source de données (dans Word l'icône ajouter un champ de fusion n'est
pas
Bonjour à tous, Ca y est j'ai trouvé... C'est le Paramètre Connexion qui a changé, il est devenu hyper long et complexe. Pour le trouver il suffit d'enregistrer dans Word une macro qui ouvre une source de données Access ; Que n'y ai-je pensé plutôt ! Merci pour tout Etienne.
"Raymond [mvp]" a écrit dans le message de news:
problème car la boîte de dialogue s'ouvre sur la commande : .ActiveDocument.MailMerge.OpenDataSource Name:=strAppname.... tu as bien indiqué le SQLStatement:= "SELECT * FROM [Clients]",
SQLStatement1:="" ?
difficile à voir à distance.
-- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Evaro" a écrit dans le message de news:
Bonjour Raymond, Merci pour ta réponse, avant de poster j'avais bien parcouru plusieurs sites dont le tien, mais trop rapidement. J'ai bien recopié le code de ton cas N° 2 mais ça ne résoud pas mon problème car la boîte de dialogue s'ouvre sur la commande : .ActiveDocument.MailMerge.OpenDataSource Name:=strAppname.... donc avant le : .ActiveDocument.MailMerge.DataSource.QueryString = _
Par contre, effectivement, la boîte de dialogue ne s'ouvre pas lorsque je
renseigne le paramètre sqlStatement:= "SELECT * From MaTable" Mais alors le lien n'est pas établi entre le document principal et la source de données (dans Word l'icône ajouter un champ de fusion n'est pas