Access VBA中的运行时3464。尝试使用SQL select语句打开记录集

我在尝试使此代码正常工作时遇到了麻烦:

Public Sub GetDepot()
    Dim fs As Date
    Dim ss As Long

    fs = CurrentDb.OpenRecordset("SELECT Max(fldMovementDate) FROM [tblMovements] WHERE [fldMovementTypeIdfk] =1")(0)

    ss = CurrentDb.OpenRecordset("SELECT(fldMovementLocationIdfk) FROM [tblMovements]  WHERE [fldMovementDate]= '" & fs & "'")(0)

    MsgBox (ss)
End Sub

最终,我试图从表单的最后一个仓库位置填充表单上的文本框。调试会选择我要设置ss变量的位置。我的SQL语句出了点问题,并且尝试了各种方法来纠正它,但无济于事。我还尝试将变量存储为不同的数据类型,以为这可能是我出了问题的地方,但是这种方法仍然无法解决问题。

最后的MsgBox只是用来帮助尝试和调试的,但是代码还没到那么远。我知道我将需要向此Sub添加更多功能,以完成我需要的功能,但无法再进行任何操作。

我也尝试过设置MsgBox来显示fs变量存储的内容,这似乎显示了正确的日期,即16/02/18。

如果有人可以帮助,将不胜感激!

古斯塔夫

为此,请使用DMaxDLookup

fs = DMax("fldMovementDate", "[tblMovements]", "[fldMovementTypeIdfk] = 1")

ss = DLookup("fldMovementLocationIdfk", "[tblMovements]", "[fldMovementDate]= #" & Format(fs, "yyyy\/mm\/dd") & "#")

或这样做:

Public Sub GetDepot()

    Dim rs As DAO.Recordset
    Dim ss As Long

    Set rs = CurrentDb.OpenRecordset("SELECT TOP 1 fldMovementLocationIdfk FROM [tblMovements] WHERE [fldMovementTypeIdfk] = 1 ORDER BY fldMovementDate DESC")

    ss = rs(0).Value
    rs.Close

    Set rs = Nothing

    MsgBox (ss)

End Sub`

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何通过MS Access前端从MATLAB中的SQL Server打开记录集

来自分类Dev

SQL-错误“正在打开记录集”

来自分类Dev

使用嵌套查询打开记录集

来自分类Dev

使用DAO在MsAccess中打开记录集时使用With ... End

来自分类Dev

SELECT查询中的MS Access“此记录集不可更新”

来自分类Dev

从VBA,DoEvents中的Access处理“大”记录集

来自分类Dev

MS Access 使用 vba 复制记录集

来自分类Dev

Access 2013-VBA-记录集插入获取ID

来自分类Dev

将查询的记录集追加到Access中的表

来自分类Dev

无法打开记录集

来自分类Dev

MS ACCESS - VBA 中的错误运行时 3141 SQL

来自分类Dev

使用令牌打开记录

来自分类Dev

将 Access VBA 记录集导出到 Excel 中的单行

来自分类Dev

MS Access vba,使用参数打开选择查询,运行时3065无法执行选择查询

来自分类Dev

MS Access vba,使用参数打开选择查询,运行时3065无法执行选择查询

来自分类Dev

如何在Access 2010中从SQL存储过程返回多个记录集

来自分类Dev

VBA调试-查看所有打开的DAO记录集

来自分类Dev

大型记录集(VBA)的MS Access插入速度慢

来自分类Dev

MS ACCESS VBA记录集搜索条件类型不匹配

来自分类Dev

为什么和何时在Access VBA中声明新记录集时使用New关键字?

来自分类Dev

无法检索从 MS Access ADO 中的存储过程返回的记录集

来自分类Dev

使用类模块将可编辑的ADO记录集返回到MS Access Form

来自分类Dev

尝试读取记录集字段时,为什么未定义Access VBA抛出子或函数?

来自分类Dev

Access 2010中的VBA-运行时错误430

来自分类Dev

当数据存在于 Access DB 中时,excel vba 中的记录集不返回任何内容

来自分类Dev

Microsoft Access:运行时错误3142。SQL语句结束后找到字符

来自分类Dev

DAO记录集与SQL语句一起使用For Next循环添加记录

来自分类Dev

打开Access时出现“运行时错误91”

来自分类Dev

SQL WHERE ... IN记录集

Related 相关文章

  1. 1

    如何通过MS Access前端从MATLAB中的SQL Server打开记录集

  2. 2

    SQL-错误“正在打开记录集”

  3. 3

    使用嵌套查询打开记录集

  4. 4

    使用DAO在MsAccess中打开记录集时使用With ... End

  5. 5

    SELECT查询中的MS Access“此记录集不可更新”

  6. 6

    从VBA,DoEvents中的Access处理“大”记录集

  7. 7

    MS Access 使用 vba 复制记录集

  8. 8

    Access 2013-VBA-记录集插入获取ID

  9. 9

    将查询的记录集追加到Access中的表

  10. 10

    无法打开记录集

  11. 11

    MS ACCESS - VBA 中的错误运行时 3141 SQL

  12. 12

    使用令牌打开记录

  13. 13

    将 Access VBA 记录集导出到 Excel 中的单行

  14. 14

    MS Access vba,使用参数打开选择查询,运行时3065无法执行选择查询

  15. 15

    MS Access vba,使用参数打开选择查询,运行时3065无法执行选择查询

  16. 16

    如何在Access 2010中从SQL存储过程返回多个记录集

  17. 17

    VBA调试-查看所有打开的DAO记录集

  18. 18

    大型记录集(VBA)的MS Access插入速度慢

  19. 19

    MS ACCESS VBA记录集搜索条件类型不匹配

  20. 20

    为什么和何时在Access VBA中声明新记录集时使用New关键字?

  21. 21

    无法检索从 MS Access ADO 中的存储过程返回的记录集

  22. 22

    使用类模块将可编辑的ADO记录集返回到MS Access Form

  23. 23

    尝试读取记录集字段时,为什么未定义Access VBA抛出子或函数?

  24. 24

    Access 2010中的VBA-运行时错误430

  25. 25

    当数据存在于 Access DB 中时,excel vba 中的记录集不返回任何内容

  26. 26

    Microsoft Access:运行时错误3142。SQL语句结束后找到字符

  27. 27

    DAO记录集与SQL语句一起使用For Next循环添加记录

  28. 28

    打开Access时出现“运行时错误91”

  29. 29

    SQL WHERE ... IN记录集

热门标签

归档