这在Access中意味着什么?

时间:2013-08-26 19:07:28

标签: ms-access

Forms![HiddenUserCheck]![txtStatus]

看来有一个名为HiddenUserCheck的表单,并且有一个名为txtStatus的文本域

但是做什么的!这两个词之间的意思是什么?

实际代码是

If Forms![HiddenUserCheck]![txtStatus] = "Sign In" Then

当我调试它并将鼠标悬停在单词上时,它会显示Null

3 个答案:

答案 0 :(得分:2)

!用于引用集合中的一个成员... CollectionName!MemberName

Forms是其成员为Form个对象的集合的名称,并包含当前在Access会话中打开的表单。

Form有一组Control个对象。因此,将!ControlName附加到表单引用可以获得对该控件的引用。

所以Forms![HiddenUserCheck]![txtStatus]在名为 HiddenUserCheck 的表单中引用名为 txtStatus 的控件,该表单在Access会话中打开。

从该引用中获得的是控件的默认属性Value ...该控件中包含的值。

答案 1 :(得分:2)

“n00bs”与Access之间最困难的事情之一就是试图确定何时使用爆炸(!)以及何时使用点(。)。请查看this blog获取一些提示。一个可靠的指南是:如果对象存在,请使用点。如果对象是用户创建的,请使用bang。

所以:

Forms![HiddenUserCheck]![txtStatus]

Forms![HiddenUserCheck]![txtStatus].Text

注意:Access中存在“Text”,因此前面有一个点。 HiddenUserCheck和txtStatus是用户创建的单词,因此之前是爆炸。

答案 2 :(得分:0)

表单是指所有表单的集合,HiddenUserCheck是所有表单组中的表单,txtStatus是HiddenUserCheck表单上的字段。 !s是一种分离信息的方式。 Forms!HiddenUserCheck!txtStatus等同于“所有表单集合中HiddenUserCheck形式的txtStatus字段。!