vba代码,用于根据ID将文件插入表中

时间:2013-03-05 10:39:40

标签: ms-access

我开发了一些代码,可以将文件插入到访问数据库表的附件字段中。 该表称为“报告”,附件字段称为“Field1”。目前我的代码将文件插入到“Reports”表中的第一条记录中,我想要做的是根据其ID在记录中添加附件,例如(添加附件到Field1,其中ID =某个值) )。这可能有人帮我解决这个问题吗?

Instantiate the parent recordset.
Set rsfile = db.OpenRecordset("Reports")


 Do While Not rsfile.EOF
If rsfile.Fields("ID").Value = 1 Then
' Activate edit mode.
rsfile.Edit

' Instantiate the child recordset.
Set rsReport = rsfile.Fields("Field1").Value

'Add a new attachment.
filePath = "C:\dbPDF\sitereport.pdf"
rsReport.AddNew
rsReport.Fields("FileData").LoadFromFile (filePath)
rsReport.Update

' Update the parent record
rsfile.Update

rsfile.MoveNext
Loop

1 个答案:

答案 0 :(得分:1)

您可以迭代思考报告并在条件匹配时更新,应该类似于:

rsfile = db.OpenRecordset("Reports")

Do While Not rsfile.EOF
 If rsfile.Fields("ID").Value = 1 Then
    'Activate edit mode.
    rsfile.Edit

    'Instantiate the child recordset.
    Set rsReport = rsfile.Fields("Field1").Value
    'Add a new attachment.
    filePath = "C:\dbPDF\sitereport.pdf"
    rsReport.AddNew
    rsReport.Fields("FileData").LoadFromFile (filePath)
    rsReport.Update 
    'Update the parent record
    rsfile.Update
 End If
'Next row
 rsfile.moveNext
Loop