2017-03-07 98 views
0

我一直在使用一种形式来跟踪我的工作行为。该表单还处理附件。一切都很好,但是自从IT将我的系统转换到Windows 10并同时在办公室13和2016同时进行。附件功能无法正常工作。 将附件添加到新记录时,它会完成VBA而不出现错误,但会将记录保存到以前的记录中。 在我应该知道的更新版本中有所改变。 我用一个很简单的rotine添加文件: -访问2016年VBA记录.addnew保存到以前的记录

Dim db As DAO.Database 
Dim rsParent As DAO.Recordset2 
Dim rsChild As DAO.Recordset2 
Set db = CurrentDb 
Set rsParent = Me.Recordset 
rsParent.OpenRecordset 
rsParent.Edit 

Set rsChild = rsParent.Fields("Attachments").Value 

rsChild.AddNew 
rsChild.Fields("FileData").LoadFromFile FilePath 
rsChild.Update 
rsParent.Update 
+0

我忘了昏暗的添加到我的职位,以迫使附件当前记录;昏暗的分贝作为DAO.DATABASE 昏暗rsParent作为DAO.Recordset2 昏暗rsChild作为DAO.Recordset2 – NsC0001

+0

为什么你打开一个父记录集,然后使用.edit - 你似乎没有做任何事情,没有值被应用或改变。 – Minty

+0

我删除了父母上的openrecordset,但它仍然不起作用。我只能添加附件,如果记录保存没有附件,我移动到不同的记录,然后回到我想添加附件的记录。 – NsC0001

回答

0

好找到了解决。尝试了各种方法后,将附件保存到当前记录中,但没有结果。我不得不使用当前ID.:-

Set db = CurrentDb 
strSQL = "SELECT * FROM ATS WHERE ID=" & ID 
Set rsParent = db.OpenRecordset(strSQL) 
Set rsChild = rsParent.Fields("Attachments").Value 
rsParent.Edit 
rsChild.AddNew 
rsChild.Fields("FileData").LoadFromFile FilePath 
rsChild.Update 
rsParent.Update