vba代码根据ID将文件插入到表中

vba代码根据ID将文件插入到表中

问题描述:

我开发了将文件插入访问数据库表中的附件字段的代码。 该表被称为“报告”,附件字段被称为“Field1”。目前,我的代码将文件插入到“Reports”表中的第一条记录,我想要做的是根据它的ID向记录中添加附件,例如(将ID附加到Field1的ID = some value )。这可能有人可以帮我解决这个问题吗?vba代码根据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 

你可以迭代思想的报告和更新,如果条件匹配,是应该与此类似:

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 
+0

嗨Wawrzyniec SZ,将工作对我来说,我怎么可能incorpate说成我的代码,我有试过但得到一个错误? – derek 2013-03-05 12:00:58

+0

我编辑了我的代码,上面添加了代码,但是得到一个错误“Do with loop” – derek 2013-03-05 12:07:11

+0

我错过了'end if'。纠正。 – www 2013-03-05 13:07:31