2009-07-28 15 views
1

J'essaie d'écrire une petite routine simple pour envoyer par courrier électronique une pièce jointe stockée dans une base de données Access 2007. Pour une raison quelconque, je ne peux pas faire fonctionner la partie la plus simple.Accès à Field2 dans Access 2007

je reçois une erreur « type défini par l'utilisateur non défini » sur la ligne suivante:

Dim attachmentField As DAO.Field2 

Maintenant, jusqu'à ce point, je ne l'ai pas consulté tous les objets DAO encore, mais mon hypothèse était que je seulement nécessaire pour ajouter la référence pertinente. Chose est, je semble avoir une idée fausse sur ce que cette référence est. J'ai essayé "Microsoft DAO 3.6 Object Library" qui a fait sens, mais je reçois toujours le même message d'erreur. Ensuite, j'ai essayé 3.5 de la même chose et ensuite JET, puis quelques autres qui ont fait beaucoup moins de sens.

Voici la liste complète, dans le cas où j'ai raté quelque chose d'autre qui est vraiment basique. Je sais que cela nécessite énormément de nettoyage, mais j'aimerais que cela fonctionne d'abord.

Private Sub Command4_Click() 
    Dim appOutLook As Outlook.Application 
    Dim MailOutLook As Outlook.MailItem 
    Set appOutLook = CreateObject("Outlook.Application") 
    Set MailOutLook = appOutLook.CreateItem(olMailItem) 

    With MailOutLook 
    .To = Description.Value 
    .Subject = "Confirmation of " & ID.Value 

    'Error on the next line 
    Dim attachmentField As DAO.Field2 
    attachmentField = Recordset("Att") 
    attachmentField.SaveToFile "C:\Temp\" & Att.FileName 
    Attachments.Add "C:\Temp\" & Att.FileName, olByValue, 1, "Document" 

    '.DeleteAfterSubmit = True 
    .Send 
    End With 
End Sub 

Des idées?

Répondre

4

Vous avez besoin d'une référence à la version 12 DAO - qui prend en charge le nouvel objet FIELD2

Essayez d'ajouter cette référence - "moteur de base de données Microsoft Office Access 12.0"

-2

Modifiez la ligne

Dim attachmentField As DAO.Field 

également, d'où vient le Recordset de? Où est-il rempli de documents?

+0

Non. Je suis à la recherche de Field2 - c'est ce dont vous avez besoin pour manipuler les champs de pièces jointes. –