2017-03-07 8 views
0

私の仕事のための行動を追跡するためにフォームを使用しています。フォームは添付ファイルも処理します。すべてがうまくいっていたが、ITシステムがWindows 10に移行し、同時に2016年にオフィス13に移行して以来、アタッチメント機能が正しく機能しない。 新しいレコードに添付ファイルを追加すると、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 DAO.Recordset2 薄暗いrsChildとしてとして暗いrsParentとしてDAO.Recordset2 – NsC0001

+0

なぜ、親のレコードセットを開いて、.editを使用していますか?何もしていないようです。値は適用されず、変更されません。 – Minty

+0

親のopenrecordsetを削除しましたが、まだ動作していません。レコードが添付ファイルなしで保存され、別のレコードに移動してから、レコードに戻って添付ファイルを追加する場合のみ、添付ファイルを追加できます。 – NsC0001

答えて

0

OK]をクリックして修正を見つけました。すべての種類のメソッドを試した結果、添付ファイルを現在のレコードに保存せずに結果を返します。私は私が私のポストに薄暗い年代を追加するのを忘れ、現在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 
関連する問題