动态排序列 MS Access 子窗体
Dynamically order columns MS Access subform
我需要通过单击按钮对 MS Access 表单中的列重新排序。
- 如果 Column Sequence1 按钮的点击顺序应该是 Col1、Col2、Col3
- 如果 Column Sequence2 按钮的点击顺序应该是 Col3、Col2、Col1
- 如果 Column Sequence3 按钮的点击顺序应该是 Col2、Col1、Col3
请参考以下截图以供参考
我试过了,但只有在主窗体或子窗体中手动保存时,列顺序才会发生变化。请帮助 VBA 脚本
假设有两列(而不是你的两列,但很容易扩展);您可以更改这些属性:
Private Sub Command1_Click()
With Me.MyTbl_subform.Controls
!Col1_Label.Caption = "ColA" ' Column Heading on the form
!Col2_Label.Caption = "ColB"
!Col1.ControlSource = "ColA" ' Column name from Table/Query in RecordSource
!Col2.ControlSource = "ColB"
End With
End Sub
Private Sub Command2_Click()
With Me.MyTbl_subform.Controls
!Col1_Label.Caption = "ColB"
!Col2_Label.Caption = "ColA"
!Col1.ControlSource = "ColB"
!Col2.ControlSource = "ColA"
End With
End Sub
Col1_Label、Col2_Label、Col1、Col2是子窗体上的控件名称; ColA 和 ColB 是子表单源中的列名 table/query.
我需要通过单击按钮对 MS Access 表单中的列重新排序。
- 如果 Column Sequence1 按钮的点击顺序应该是 Col1、Col2、Col3
- 如果 Column Sequence2 按钮的点击顺序应该是 Col3、Col2、Col1
- 如果 Column Sequence3 按钮的点击顺序应该是 Col2、Col1、Col3
请参考以下截图以供参考
我试过了,但只有在主窗体或子窗体中手动保存时,列顺序才会发生变化。请帮助 VBA 脚本
假设有两列(而不是你的两列,但很容易扩展);您可以更改这些属性:
Private Sub Command1_Click()
With Me.MyTbl_subform.Controls
!Col1_Label.Caption = "ColA" ' Column Heading on the form
!Col2_Label.Caption = "ColB"
!Col1.ControlSource = "ColA" ' Column name from Table/Query in RecordSource
!Col2.ControlSource = "ColB"
End With
End Sub
Private Sub Command2_Click()
With Me.MyTbl_subform.Controls
!Col1_Label.Caption = "ColB"
!Col2_Label.Caption = "ColA"
!Col1.ControlSource = "ColB"
!Col2.ControlSource = "ColA"
End With
End Sub
Col1_Label、Col2_Label、Col1、Col2是子窗体上的控件名称; ColA 和 ColB 是子表单源中的列名 table/query.