Bonjour, j'ai créé un formulaire avec un bouton qui a comme Procédure
événementielle la suivante :
Option Compare Database
Option Explicit
Private Sub Commande0_Click()
On Error Resume Next ' a modifier selon besoin
Dim W_App As Object
Set W_App = CreateObject("Word.Application")
Dim Db
Dim Rs
Set Db = CurrentDb
Dim Strsql As String
Strsql = "SELECT KVN3A.NOM, KVN3A.PRENOM, KVN3A.ADRESSE, KVN3A.COMMUNE,
KVN3A.CD_POST, KVN3A.Complement_ADRESSE FROM KVN3A;"
Set Rs = CurrentDb.OpenRecordset(Strsql)
Rs.MoveFirst
With W_App
.Visible = True
Do Until Rs.EOF
.Documents.Open ("c:\doc1.doc")
.ActiveDocument.Bookmarks("nom").Select
.Selection.InsertAfter Rs.Fields("NOM")
.ActiveDocument.Bookmarks("prenom").Select
.Selection.InsertAfter Rs.Fields("PRENOM")
.ActiveDocument.Bookmarks("adresse").Select
.Selection.InsertAfter Rs.Fields("ADDRESSE")
.ActiveDocument.Bookmarks("adresse2").Select
.Selection.InsertAfter Rs.Fields("Complement_ADRESSE")
.ActiveDocument.Bookmarks("postal").Select
.Selection.InsertAfter Rs.Fields("CD_POST")
.ActiveDocument.Bookmarks("commune").Select
.Selection.InsertAfter Rs.Fields("COMMUNE")
.ActiveDocument.PrintOut False
.ActiveDocument.Close
Rs.MoveNext
Loop
Rs.Close
Set Rs = Nothing
Set Db = Nothing
.Quit
End With
Set W_App = Nothing
End Sub
Cà se lance, çà ouvre Word mais aucun nouveau document est ouvert et Access
plante.
Quelqu'un peut me dire ce que j'ai fait de travers.
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]
Bonjour.
toutes les conditions sont réunies pour que ça pose problème. Dim Db Dim Rs mettre Dim Db as DAO.Database Dim Rs as DAO.Recordset
la requête retourne-t-elle des enregistrements ? remplacer :
Set Rs = CurrentDb.OpenRecordset(Strsql) Rs.MoveFirst par
Set Rs = Db.OpenRecordset(Strsql) If Rs.BOF Then Exit Sub 'pas d'enregistrement
après ça, mettre des points d'arrêt dans le code pour voir où ça plante. -- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access.vba.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Patrick Asselin" a écrit dans le message de news:
Bonjour, j'ai créé un formulaire avec un bouton qui a comme Procédure événementielle la suivante :
Option Compare Database Option Explicit
Private Sub Commande0_Click() On Error Resume Next ' a modifier selon besoin Dim W_App As Object Set W_App = CreateObject("Word.Application") Dim Db Dim Rs Set Db = CurrentDb Dim Strsql As String Strsql = "SELECT KVN3A.NOM, KVN3A.PRENOM, KVN3A.ADRESSE, KVN3A.COMMUNE, KVN3A.CD_POST, KVN3A.Complement_ADRESSE FROM KVN3A;" Set Rs = CurrentDb.OpenRecordset(Strsql) Rs.MoveFirst With W_App .Visible = True Do Until Rs.EOF .Documents.Open ("c:doc1.doc") .ActiveDocument.Bookmarks("nom").Select .Selection.InsertAfter Rs.Fields("NOM") .ActiveDocument.Bookmarks("prenom").Select .Selection.InsertAfter Rs.Fields("PRENOM") .ActiveDocument.Bookmarks("adresse").Select .Selection.InsertAfter Rs.Fields("ADDRESSE") .ActiveDocument.Bookmarks("adresse2").Select .Selection.InsertAfter Rs.Fields("Complement_ADRESSE") .ActiveDocument.Bookmarks("postal").Select .Selection.InsertAfter Rs.Fields("CD_POST") .ActiveDocument.Bookmarks("commune").Select .Selection.InsertAfter Rs.Fields("COMMUNE") .ActiveDocument.PrintOut False .ActiveDocument.Close Rs.MoveNext Loop Rs.Close Set Rs = Nothing Set Db = Nothing .Quit End With Set W_App = Nothing End Sub
Cà se lance, çà ouvre Word mais aucun nouveau document est ouvert et Access plante.
Quelqu'un peut me dire ce que j'ai fait de travers.
Merci D'avance.
Cordialement, Patrick Asselin.
Bonjour.
toutes les conditions sont réunies pour que ça pose problème.
Dim Db
Dim Rs
mettre Dim Db as DAO.Database
Dim Rs as DAO.Recordset
la requête retourne-t-elle des enregistrements ?
remplacer :
Set Rs = CurrentDb.OpenRecordset(Strsql)
Rs.MoveFirst
par
Set Rs = Db.OpenRecordset(Strsql)
If Rs.BOF Then Exit Sub 'pas d'enregistrement
après ça, mettre des points d'arrêt dans le code pour voir où ça plante.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Patrick Asselin" <PatrickAsselin@discussions.microsoft.com> a écrit dans le
message de news: F927F649-A2F7-425D-96B7-60CF11BC4347@microsoft.com...
Bonjour, j'ai créé un formulaire avec un bouton qui a comme Procédure
événementielle la suivante :
Option Compare Database
Option Explicit
Private Sub Commande0_Click()
On Error Resume Next ' a modifier selon besoin
Dim W_App As Object
Set W_App = CreateObject("Word.Application")
Dim Db
Dim Rs
Set Db = CurrentDb
Dim Strsql As String
Strsql = "SELECT KVN3A.NOM, KVN3A.PRENOM, KVN3A.ADRESSE, KVN3A.COMMUNE,
KVN3A.CD_POST, KVN3A.Complement_ADRESSE FROM KVN3A;"
Set Rs = CurrentDb.OpenRecordset(Strsql)
Rs.MoveFirst
With W_App
.Visible = True
Do Until Rs.EOF
.Documents.Open ("c:doc1.doc")
.ActiveDocument.Bookmarks("nom").Select
.Selection.InsertAfter Rs.Fields("NOM")
.ActiveDocument.Bookmarks("prenom").Select
.Selection.InsertAfter Rs.Fields("PRENOM")
.ActiveDocument.Bookmarks("adresse").Select
.Selection.InsertAfter Rs.Fields("ADDRESSE")
.ActiveDocument.Bookmarks("adresse2").Select
.Selection.InsertAfter Rs.Fields("Complement_ADRESSE")
.ActiveDocument.Bookmarks("postal").Select
.Selection.InsertAfter Rs.Fields("CD_POST")
.ActiveDocument.Bookmarks("commune").Select
.Selection.InsertAfter Rs.Fields("COMMUNE")
.ActiveDocument.PrintOut False
.ActiveDocument.Close
Rs.MoveNext
Loop
Rs.Close
Set Rs = Nothing
Set Db = Nothing
.Quit
End With
Set W_App = Nothing
End Sub
Cà se lance, çà ouvre Word mais aucun nouveau document est ouvert et
Access
plante.
Quelqu'un peut me dire ce que j'ai fait de travers.
toutes les conditions sont réunies pour que ça pose problème. Dim Db Dim Rs mettre Dim Db as DAO.Database Dim Rs as DAO.Recordset
la requête retourne-t-elle des enregistrements ? remplacer :
Set Rs = CurrentDb.OpenRecordset(Strsql) Rs.MoveFirst par
Set Rs = Db.OpenRecordset(Strsql) If Rs.BOF Then Exit Sub 'pas d'enregistrement
après ça, mettre des points d'arrêt dans le code pour voir où ça plante. -- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access.vba.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Patrick Asselin" a écrit dans le message de news:
Bonjour, j'ai créé un formulaire avec un bouton qui a comme Procédure événementielle la suivante :
Option Compare Database Option Explicit
Private Sub Commande0_Click() On Error Resume Next ' a modifier selon besoin Dim W_App As Object Set W_App = CreateObject("Word.Application") Dim Db Dim Rs Set Db = CurrentDb Dim Strsql As String Strsql = "SELECT KVN3A.NOM, KVN3A.PRENOM, KVN3A.ADRESSE, KVN3A.COMMUNE, KVN3A.CD_POST, KVN3A.Complement_ADRESSE FROM KVN3A;" Set Rs = CurrentDb.OpenRecordset(Strsql) Rs.MoveFirst With W_App .Visible = True Do Until Rs.EOF .Documents.Open ("c:doc1.doc") .ActiveDocument.Bookmarks("nom").Select .Selection.InsertAfter Rs.Fields("NOM") .ActiveDocument.Bookmarks("prenom").Select .Selection.InsertAfter Rs.Fields("PRENOM") .ActiveDocument.Bookmarks("adresse").Select .Selection.InsertAfter Rs.Fields("ADDRESSE") .ActiveDocument.Bookmarks("adresse2").Select .Selection.InsertAfter Rs.Fields("Complement_ADRESSE") .ActiveDocument.Bookmarks("postal").Select .Selection.InsertAfter Rs.Fields("CD_POST") .ActiveDocument.Bookmarks("commune").Select .Selection.InsertAfter Rs.Fields("COMMUNE") .ActiveDocument.PrintOut False .ActiveDocument.Close Rs.MoveNext Loop Rs.Close Set Rs = Nothing Set Db = Nothing .Quit End With Set W_App = Nothing End Sub
Cà se lance, çà ouvre Word mais aucun nouveau document est ouvert et Access plante.
Quelqu'un peut me dire ce que j'ai fait de travers.