Utiliser des pièces jointes dans DAO
Dans DAO, les champs Pièces jointes fonctionnent comme les autres champs à valeurs multiples. Le champ qui contient la pièce jointe comporte un jeu d'enregistrements qui est un enfant du jeu d'enregistrements de la table. Il existe deux nouvelles méthodes DAO, LoadFromFile et SaveToFile, qui traitent exclusivement des pièces jointes.
La méthode LoadFromFile charge un fichier se trouvant sur le disque et l'ajoute comme pièce jointe à l'enregistrement spécifié. L’exemple de code suivant montre la syntaxe de la méthode LoadFromFile .
Recordset.Fields("FileData").LoadFromFile(<filename>)
Notes
Le champ FileData est réservé en interne par le moteur de base de données Access pour le stockage des données binaires de la pièce jointe.
L’exemple de code suivant utilise la méthode LoadFromFile pour charger l’image d’un employé à partir du disque.
' Instantiate the parent recordset.
Set rsEmployees = db.OpenRecordset("Employees")
… Code to move to desired employee
' Activate edit mode.
rsEmployees.Edit
' Instantiate the child recordset.
Set rsPictures = rsEmployees.Fields("Pictures").Value
' Add a new attachment.
rsPictures.AddNew
rsPictures.Fields("FileData").LoadFromFile "EmpPhoto39392.jpg"
rsPictures.Update
' Update the parent record
rsEmployees.Update
L’exemple de code suivant montre comment utiliser la méthode SaveToFile pour enregistrer toutes les pièces jointes d’un employé spécifique sur le disque.
' Instantiate the parent recordset.
Set rsEmployees = db.OpenRecordset("Employees")
… Code to move to desired employee
' Instantiate the child recordset.
Set rsPictures = rsEmployees.Fields("Pictures").Value
' Loop through the attachments.
While Not rsPictures.EOF
' Save current attachment to disk in the "My Documents" folder.
rsPictures.Fields("FileData").SaveToFile _
"C:\Documents and Settings\Username\My Documents"
rsPictures.MoveNext
Wend
Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.