Access 2013 VBA编辑器更改日期()到目前为止

问题描述 投票:1回答:1

当我输入strDate = Date()时,它会切换到strDate = date,然后代码无法正常运行,因为它不知道“日期”指的是什么。这是一个全新的Access 2013数据库,只有一个表单,其中包含一个用于运行代码的按钮和一个只有一个字段的表来插入日期。

为此数据库检查的引用是:

  • Visual Basic For Applications
  • Microsoft Access 15.0对象库
  • OLE自动化
  • Microsoft Office 15.0 Access数据库引擎对象库 Dim strDate As String strDate = Date() DoCmd.SetWarnings False Dim strSQL As String strSQL = "INSERT INTO Table1 VALUES ('" & strDate & "');" DoCmd.RunSQL strSQL DoCmd.SetWarnings True
ms-access access-vba
1个回答
0
投票

由于您要在表中插入日期值,因此该值不应该用单引号括起来,否则数据将被解释为字符串。

类似地,Date函数将返回日期值,因此您的变量strDate应该是Date类型而不是String

Date()自动转换为Date是预期的,并且仍将导致Date函数被评估,没有参数;我相信这种转换是因为符号Date也对应于数据类型。

但是,更简单的方法是直接在SQL代码中评估Date函数,例如:

DoCmd.RunSQL "INSERT INTO Table1 VALUES (Date());"
© www.soinside.com 2019 - 2024. All rights reserved.