微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

# 部分字段名,Access 认为是日期

如何解决# 部分字段名,Access 认为是日期

我正在编写一个 VBA,如果 Parcel# 与 Me.Parcel 匹配,则使按钮上的字体变为粗体。 # 是字段名称的一部分。 MS Access 认为这是一个约会。这是我的代码。它不断收到“查询表达式中日期的语法错误”。我知道它一定是我遗漏的一些简单的东西。

Private Sub Form_Current()
    If DCount("*","County Address Table","Parcel#'='" & Me.Parcel) Then
        Me.[COUNTY ADDRESS HISTORY].FontBold = True
     Else
        Me.[COUNTY ADDRESS HISTORY].FontBold = False
    End If

解决方法

表名和列名可以有特殊字符,但是它们需要在查询中被引用,以免事情往南——就像一个 # 字符被解释为一个 {{1} } 文字定界符 =)

事实上,出于各种原因,引用字段名称应该是默认的操作方式。

使用 Date 方括号 [ 来引用标识符,as already suggested

]

考虑在新表和新列名中避免使用空格和特殊字符:If DCount("*","[County Address Table]","[Parcel#]'='" & Me.Parcel) Then CountryAddressTable 等更易于使用。

,

“字符串的第一部分” & Chr(35) & “字符串的第二部分”

,

您可以将其简化为:

Private Sub Form_Current()

    Me.[COUNTY ADDRESS HISTORY].FontBold = _
        Not IsNull(DLookup("[Parcel#]","[Parcel#] = '" & Me.Parcel & "'"))

End Sub

如果 Parcel# 是一个数字,删除单引号。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。