【问题标题】:Get Error 3075 Data type mismatch in criteria expression获取错误 3075 条件表达式中的数据类型不匹配
【发布时间】:2020-06-23 21:34:46
【问题描述】:

我明白了

错误 3075 条件表达式中的数据类型不匹配

但我不能离开它

什么问题???

但 DateCutting 是整数类型

Dim strCriteria, task As String
strCriteria = "([DateCutting]>= #'" & Me.txtfrom & "'# And [DateCutting]<=#'" & Me.txtto & "')#"
task = "select * from Cutting where [DateCutting]>= '" & strCriteria & "'"

DoCmd.ApplyFilter task

【问题讨论】:

  • 错误出现在哪一行?
  • 关于 DoCmd.ApplyFilter 任务(但 DateCutting 是整数类型)

标签: vba ms-access


【解决方案1】:

将 DateCutting 更改为 DateTime 并调整您的标准:

Dim strCriteria As String

strCriteria = "[DateCutting] >= #" & Format(Me.txtfrom, "yyyy\/mm\/dd") & "# And [DateCutting] <= #" & Format(Me.txtto, "yyyy\/mm\/dd") & "#"

DoCmd.ApplyFilter strCriteria

要查找数字:

strCriteria = "[Number] = " & Me.txtNumber & ""

作为文本:

strCriteria = "[TextNumber] = '" & Me.txtNumber & "'"

【讨论】:

  • 无法使用数字类型?
  • 也许,但并不简单。取决于您如何使用数字作为日期。除了让自己变得更难之外,没有其他理由这样做。
  • 请查看扩展答案。
  • 那么你的“数字”就是文本。请查看编辑后的答案。
  • 太棒了!如果您觉得是,请标记为已回答。
【解决方案2】:

试试 Dim strCriteria as String

dim task As String

【讨论】:

  • 这不应该是问题,因为在这种情况下 strCriteria 将是变体/字符串。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多