2017-03-07 109 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