2017-07-25 31 views
0

私はこのファイルを新しいフォルダにコピーし、ファイルパス/名前をtblFileAttachmentsのDocName列に追加しようとしています。MS Accessランタイムエラー3162

追加するファイルを選択すると、「実行時エラー3162 ... Variantデータ型ではない変数にNull値を割り当てようとしました。

は、ここで私は私がのDocID、DOCNAMEとRequestID_FKフィールドを持つtblFileAttachmentsに基づいてフォームを持っている

tblFileAttachments 
- DocID 
- DocName 
- RequestID_FK 

tblRequests 
- RequestID 
- PFName 
- PLName 
- PBusinessName 

を持つテーブルです。私はまた、次のコードで「ファイルを追加」ボタンを持っている:

Private Sub btnAttachFile_Click() 
Dim rsFile As DAO.Recordset 
Dim strFilePath As String, strFilename As String 
strFilePath = fSelectFile() 
If strFilePath & "" <> "" Then 
strFilename = Mid(strFilePath, InStrRev(strFilePath, "\") + 1) 
With CurrentDb.OpenRecordset("tblFileAttachments") 
    .AddNew 
    !DocID = Me.DocID 
    !FilePath = strFilePath 
    !FileName = strFilename 
    .Update 
End With 
End If 
End Sub 

をエラーのデバッグ、それが

!DocID = Me.DocID 

答えて

0

DocIDはおそらくオートナンバー列で強調して?

!DocID = Me.DocID 

IDが自動的に生成されます。新しいレコードを作成中

はその後、単純にこの行を残し、それを全く割り当てないでください。