使用 ColumnHidden 属性可以在“数据表”视图中显示或隐藏指定的列。Boolean 型,可读写。
expression.ColumnHidden
expression 必需。返回“Applies To”列表中的一个对象的表达式。
在“数据表”视图中单击“格式”菜单上的“隐藏列”或“取消隐藏列”即可设置 ColumnHidden 属性。
在 Microsoft Access 数据库 (.mdb) 中,通过在 Visual Basic 中使用 Long Interger 值指定下列设置,也可以设置该属性:
设置 | 说明 |
---|---|
True | 隐藏列。 |
False | (默认值)列可见。 |
注意 ColumnHidden 属性在“设计”视图中不可用。
例如,如果“客户地址”字段太宽,隐藏该字段便于查看“客户名称”和“电话号码”字段。
注意 ColumnHidden 属性适用于“数据表”视图中所有的字段,并且当窗体处于“数据表”视图时,还适用于窗体控件。
在“数据表”视图中使用 ColumnHidden 属性隐藏列,并不隐藏“窗体”视图中同一列的字段。同样,在“窗体”视图中将控件的 Visible 属性设为 False,也不会隐藏“数据表”视图中对应的列。
即使字段的列在表的“数据表”视图中是隐藏的,仍然可以在查询中显示该字段。
即使应用了筛选后列仍然是隐藏的,照样可以将隐藏列中的值用作筛选的标准。
不能使用“编辑”菜单上的“复制”、“粘贴”、“查找”和“替换”来影响隐藏的字段。
将字段的 ColumnWidth 属性设为 0,或在“数据表”视图中将字段宽度调整为零,会使 Microsoft Access 将相应的 ColumnHidden 属性设为 True。取消隐藏列将使 ColumnWidth 属性还原为字段隐藏前的值。
以下示例隐藏“产品”窗体“数据表”视图中的“产品ID”字段。
Forms!Products!ProductID.ColumnHidden = -1
下一个示例还隐藏“产品”表的“数据表”视图中的“产品ID”字段。
Public Sub SetColumnHidden()
Dim dbs As DAO.Database
Dim fld As DAO.Field
Dim prp As DAO.Property
Const conErrPropertyNotFound = 3270
' Turn off error trapping.
On Error Resume Next
Set dbs = CurrentDb
' Set field property.
Set fld = dbs.TableDefs!Products.Fields!ProductID
fld.Properties("ColumnHidden") = True
' Error may have occurred when value was set.
If Err.Number <> 0 Then
If Err.Number <> conErrPropertyNotFound Then
On Error GoTo 0
MsgBox "Couldn't set property 'ColumnHidden' " & _
"on field '" & fld.Name & "'", vbCritical
Else
On Error GoTo 0
Set prp = fld.CreateProperty("ColumnHidden", dbLong, True)
fld.Properties.Append prp
End If
End If
Set prp = Nothing
Set fld = Nothing
Set dbs = Nothing
End Sub