-1

我在表单中有组合框,我希望它的下拉值是表字段名称。表名称是 tblCap,字段是 Year1、Year2 和 Year3。我希望组合框中的下拉列表为 Year1, Year2,Year3 and when that year is selected it should display related field in subform.

任何帮助,将不胜感激。

谢谢你。

4

2 回答 2

2

这比你想象的要简单得多:

  1. 打开组合框的属性表,选项卡数据
  2. 设置RowSourceType : 值列表
  3. 设置行来源:“Year1”;“Year2”;“Year3”

要在子表单中显示选定的值(字段名称),请使用以下表达式:

=[Parent]![NameOfYourCombobox]

要在主窗体的文本框中显示子窗体的选定字段名称的值:

=[NameOfYourSubformControl].[Form]([NameOfYourCombobox])

或 (?) 在子表单上:

=[Parent]([Parent]![NameOfYourCombobox])
于 2017-05-16T09:08:21.640 回答
1

评论后更新。

根据@GustavRowSource的回答设置好之后,为了根据 ComboBox 的值隐藏/取消隐藏 TextBox 控件,您需要将它们的Visible属性设置为True/False.

在“事件”选项卡上AfterUpdate,将 ComboBox 控件设置为,[Event Procedure]并在文件隐藏代码上设置以下内容:

Private Sub YourComboControlName_AfterUpdate()
    With Me
        Select Case .YourComboBoxName.Value
            Case "Year1":
                With .YourSubformName.Form
                    .Your2000TextBoxControlName.ColumnHidden = false 
                    .Your2001TextBoxControlName.ColumnHidden = true
                    .Your2002TextBoxControlName.ColumnHidden = true 
                End With

            Case "Year2":
                With .YourSubformName.Form
                    .Your2000TextBoxControlName.ColumnHidden = true
                    .Your2001TextBoxControlName.ColumnHidden = false
                    .Your2002TextBoxControlName.ColumnHidden = true 
                End With

            Case "Year3":
                With .YourSubformName.Form
                    .Your2000TextBoxControlName.ColumnHidden = true 
                    .Your2001TextBoxControlName.ColumnHidden = true 
                    .Your2002TextBoxControlName.ColumnHidden= false 
                End With
        End Select
    End With
End Sub
于 2017-05-16T08:14:22.650 回答