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
|
Sub MergeBM()
'Définitions
Dim sql As String
Dim database As DAO.database
Dim qry As DAO.QueryDef
Dim recordset As DAO.recordset
'Implémentations
Set database = Application.CurrentDb
Set qry = database.QueryDefs("RequêteTypePassage")
qry.Parameters("PARAM_NUM").Value = Forms!CréationConvention!Modifiable27
Set rs = qry.OpenRecordset
'Conditions
Debug.Print rs.Fields(0) 'pour afficher le résultat dans la fenêtre d'exécution
Select Case rs.Fields(0)
Case "façade"
Call MergeFacade
Case "surplomb"
Call MergeSurplomb
Case "souterrain"
Call MergeSouterrain
Case "façade+boîtier"
Call MergeFacadeBoitier
Case Else
MsgBox ("Pas de trame type définie pour ce type de passage : " & Chr(34) & Forms!CréationConvention!SubChercheFiche!TypePassage & Chr(34))
End Select
End Sub
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_NUM").Value = Forms!CréationConvention!Modifiable27
Set rs = query.OpenRecordset
Set oAppli = CreateObject("Word.Application")
Set oDoc = oAppli.Documents.Open("\\..\trame type\AccessFusionFaçade.dotm", False, True, False)
oAppli.Visible = True
'Boucle pour la récupération de données
While Not rs.EOF
oDoc.SaveAs ("C:\Documents and Settings\All Users\Documents\" & rs.Fields(0) & ".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")
oDoc.Bookmarks("Parcelle").Range.Text = rs.Fields("Parcelle")
oDoc.Bookmarks("Parcelle2").Range.Text = rs.Fields("Parcelle")
oDoc.Save
rs.MoveNext
Wend
'Libération des objets
rs.Close
Set rs = Nothing
db.Close
Set db = Nothing
End Sub |
Partager