我有一个带有数据表子表单的 MS Access 表单。
使用代码,我更改了各个列的 ColumnHidden 属性。
但是,当我关闭表单时,我被问到是否要保存数据表表格的表格布局。
答案 0 :(得分:2)
如果您始终隐藏相同的列 - 创建一个只包含您想要显示的列的查询,并将其用作子表单的源。
如果您仍需要一些隐藏字段(子键等),则必须创建常规表单。这还不错:
答案 1 :(得分:0)
我不确定是否有一种简单的方法可以做到这一点,因为Access使用表单保存了很多属性。如果您没有使用数据表视图,则可以隐藏表单上的CLOSE按钮并将其替换为命令按钮以使用以下代码关闭表单:
DoCmd.Close acForm, Me.Name, acSaveNo
但由于这是一个数据表,你不能这样做。
您可以尝试将数据表作为子表单嵌入到未绑定的父表单中,但我不知道在父表单上的命令按钮后面使用上面的代码是否会将列宽保存到嵌入的子表单中。
一种解决方案是在数据表的OnLoad事件中重新初始化列宽。然后,您可以使用acHidden打开表单,并在OnLoad事件中,将列宽设置为正确的值(您需要将英寸乘以1440以获得要分配给列宽属性的twips值),并且OnLoad的结尾,将Me.Hidden设置为False。
但事实上,这确实是一个痛苦的事情。
我担心这是使用数据表的缺点之一,因为没有办法定义一个不能保存最终用户UI数据的关闭命令按钮。