2

我正在尝试将我创建的表单字段 word 文档中的字段导入到 MS-Access 表中。导入工作正常,除非其中一个日期字段中有 null,然后它会引发类型不匹配错误。如何避免出现此错误?

Dim rst As New ADODB.Recordset
With rst
    .AddNew
    !BPRid = doc.FormFields("frmBPRid").Result
    If Not IsNull(doc.FormFields("frmReceiptDate").Result) Then
    !ReceiptDate = doc.FormFields("frmReceiptDate").Result
    End If    
    .Update
    .Close
End With

如上所示,我尝试将其包装在 if 语句中,但它似乎无法将该字段识别为 null。任何帮助,将不胜感激。提前致谢。

4

1 回答 1

3

我怀疑它可能是一个零长度字符串(“”)。

您可能喜欢使用 IsDate。

If IsDate(doc.FormFields("frmReceiptDate").Result) Then
   !ReceiptDate = doc.FormFields("frmReceiptDate").Result
End If   

对于其他数据类型,您可以检查零长度字符串和空格填充字段,如下所示:

If Trim(doc.FormFields("frmReceiptDate").Result & "") <> vbNullString
于 2012-07-23T15:23:25.717 回答