【问题标题】:MS Access - Hide Columns on SubformMS Access - 隐藏子表单上的列
【发布时间】:2017-02-25 05:45:10
【问题描述】:

我今天有一个烦人的问题 -

任务:

  1. 我有一个基于查询的表单子表单
  2. 当我打开表单时,我想默认隐藏部分列
  3. 我为此创建了一个公共函数:hideRawCols()

问题:

  1. 使用子窗体的 OnLoad 或 OnOpen 事件,子窗体忽略该函数,绘制窗体/子窗体时不隐藏列
  2. 我在表单上有一个选项开关,它调用了同样的函数,它工作得很好。 [(1) = 显示,(2) 隐藏],默认值 (2)

例子:

Public Function hideRawCols()

If Forms![2_4_6 QA Review]!frmRaw.Value = 2 Then
    Forms![2_4_6 QA Review]![2_4_6 QA Review subform].Form.Controls("Raw_Item").Properties("ColumnHidden") = True
    Forms![2_4_6 QA Review]![2_4_6 QA Review subform].Form.Controls("Raw_Desc").Properties("ColumnHidden") = True
    Forms![2_4_6 QA Review]![2_4_6 QA Review subform].Form.Controls("Raw_Mfg").Properties("ColumnHidden") = True
    Forms![2_4_6 QA Review]![2_4_6 QA Review subform].Form.Controls("Raw_Mfgid").Properties("ColumnHidden") = True
    Forms![2_4_6 QA Review]![2_4_6 QA Review subform].Form.Controls("Raw_Area").Properties("ColumnHidden") = True
    Forms![2_4_6 QA Review]![2_4_6 QA Review subform].Form.Controls("Raw_Depart").Properties("ColumnHidden") = True
    Forms![2_4_6 QA Review]![2_4_6 QA Review subform].Form.Controls("Raw_Pack").Properties("ColumnHidden") = True
    Forms![2_4_6 QA Review]![2_4_6 QA Review subform].Form.Controls("Raw_Uom").Properties("ColumnHidden") = True
    Forms![2_4_6 QA Review]![2_4_6 QA Review subform].Form.Controls("Raw_Cost").Properties("ColumnHidden") = True
Else
    Forms![2_4_6 QA Review]![2_4_6 QA Review subform].Form.Controls("Raw_Item").Properties("ColumnHidden") = False
    Forms![2_4_6 QA Review]![2_4_6 QA Review subform].Form.Controls("Raw_Desc").Properties("ColumnHidden") = False
    Forms![2_4_6 QA Review]![2_4_6 QA Review subform].Form.Controls("Raw_Mfg").Properties("ColumnHidden") = False
    Forms![2_4_6 QA Review]![2_4_6 QA Review subform].Form.Controls("Raw_Mfgid").Properties("ColumnHidden") = False
    Forms![2_4_6 QA Review]![2_4_6 QA Review subform].Form.Controls("Raw_Area").Properties("ColumnHidden") = False
    Forms![2_4_6 QA Review]![2_4_6 QA Review subform].Form.Controls("Raw_Depart").Properties("ColumnHidden") = False
    Forms![2_4_6 QA Review]![2_4_6 QA Review subform].Form.Controls("Raw_Pack").Properties("ColumnHidden") = False
    Forms![2_4_6 QA Review]![2_4_6 QA Review subform].Form.Controls("Raw_Uom").Properties("ColumnHidden") = False
    Forms![2_4_6 QA Review]![2_4_6 QA Review subform].Form.Controls("Raw_Cost").Properties("ColumnHidden") = False
End If


End Function

我的直觉告诉我这是加载或打开表单/子表单的时间问题。表格完全绘制后,我可以使用任何事件吗?轻微眨眼是可以接受的。

谢谢!

【问题讨论】:

    标签: ms-access


    【解决方案1】:

    我注意到:从父窗体的 OnLoad 事件中调用函数似乎会产生所需的结果。

    【讨论】:

      猜你喜欢
      • 2019-01-03
      • 2017-08-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多