2017-02-24 100 views
0

我有一个挥之不去的问题今天 -的MS Access - 隐藏列在窗体

任务:

  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 

我的直觉告诉我它的计时问题加载或打开形式/子窗体。一旦表格被完全绘制,是否有任何事件可以使用。一小眨眼就可以接受。

谢谢!

回答

0

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