【问题标题】:DCount function wording of the CRITERIACRITERIA 的 DCount 函数用语
【发布时间】:2015-07-07 22:22:17
【问题描述】:

我对@9​​87654321@ 函数的标准措辞有疑问。

click() 上,我想根据在名为“Txt_entry”的入站字段中输入的值来获取故事中字段“YearMonth”的出现次数。

我的代码忽略了给定的标准(并返回 0),因为它的措辞是错误的,但我无法找出正确的措辞。

Private Sub Ctl3_Click()
   Dim db As Database
   Dim r As Recordset
   Dim YearMonth As Field
   Dim Txt_entry As String
   Set db = CurrentDb()
   Set r = db.OpenRecordset("Table")
   Set YearMonth = r.Fields("YearMonth")
   MsgBox (DCount("YearMonth", "Table", "[YearMonth]=" & Me.Txt_entry))
   End Sub

谢谢!

【问题讨论】:

  • YearMonth 是文本字段吗?你试过一个值例如YearMonth = 201510

标签: ms-access vba dcount


【解决方案1】:

您可以随时尝试:

对于一个字符串 DCount("YearMonth", "Table", "[YearMonth]= '" & Me.Txt_entry & "'")

对于日期: DCount("YearMonth", "Table", "[YearMonth]= #" & Me.Txt_entry & "#")

取决于您将其存储在数据库中的方式。 你不需要为 Dcount 或 Dlookup 设置这些变量(假设你想要的只是计数)

仅当您想在 dcount 的 Where 子句中输入一些其他条件时才需要设置变量。

至于 me.Text_Entry ,试试 me.Text_entry.value 看看盒子是否有实际值。

你可以把它扔进 msgbox(me.txt_entry.value) 来测试它,这可能是没有得到正确计数的原因。因为查询最终会成为 YearMonth = "" 没有正确的值。

【讨论】:

  • 非常感谢。它与字符串 DCount 措辞完美配合。 YearMonth 是一个文本字段(一个字符串)
  • 你好,现在我正在尝试在另一个数据库中做同样的事情。唯一的区别是 me.Txt_entry 是另一种形式。
  • 嗨 Damien,试试 Form!*Formname*!*Fieldname* 删除 * 并替换为正确的值
【解决方案2】:

试试这个,

DCount("YearMonth", "Table", "[YearMonth]= #" & Format(Me.Txt_entry, "yyyy\/mm\/dd") & "#")

【讨论】:

    猜你喜欢
    • 2020-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-17
    • 2012-03-01
    • 2023-04-04
    相关资源
    最近更新 更多