组合框值自动更新

Posted

技术标签:

【中文标题】组合框值自动更新【英文标题】:Combo-box values automatically update 【发布时间】:2010-03-30 18:03:11 【问题描述】:

希望有人能帮忙

表结构如下:

tblCompany:   
compID
compName

tblOffice:  
offID,
compID,   
add1, add2, add3 etc...

tblEmployee:   
empID
Name, telNo, etc...   
offID

我有一个包含员工联系方式的表格,更新后一切正常。 级联组合框 cmbComp 允许我选择公司,然后选择适当的办公室 cboOff,并正确更新相应的 tblEmployee.offID 字段。地址的字段也会自动更新

cmbComp:行源

SELECT DISTINCT tblOffice.compID, tblCompany.compID 
FROM tblCompany 
INNER JOIN AdjusterCompanyOffice 
ON tblCompany.compID=tblOffice.compID 
ORDER BY tblCompany.compName; 

cboOff: 行源

SELECT tblCompany.offID, tblCompany.Address1, 
tblCompany.Address2, tblCompany.Address3, tblCompany.Address4, 
tblCompany.Address5 
FROM tblCompany 
ORDER BY tblCompany.Address1; 

我遇到的问题是,当我加载新记录时,如何检索数据并自动加载 cmbComp 和文本字段。

cboOff 组合框正确加载,因为它的控制源是 offID

我想一定有一种方法可以在打开记录时设置值?不知道如何。我不认为我可以设置 controlsource cmbComp 或文本字段,或者我可以吗?

任何帮助/指向正确方向的赞赏,一直在寻找一种方法来做到这一点,但无法到达任何地方!

-编辑

我尝试添加以下内容来控制文本字段

=[Forms]![frmAdjPersonalDetails]![cboAdjOff].[Column](2)

这适用于获取值,但会导致用于创建级联组合框和更新文本字段的更新后出错。

Private Sub cmbComp_AfterUpdate()
Me.cboOff.RowSource = "SELECT ID, Address1, Address2, Address3, Address4, Address5        FROM" & _
 " tblOffice WHERE CompID = " & Me.cmbComp & _
" ORDER BY Address1"
 Me.cboAdjOff = Me.cboAdjOff.ItemData(0)
Me.txtAdd2 = Me.cboOff.Column(2)
Me.txtAdd3 = Me.cboOff.Column(3)
Me.txtAdd4 = Me.cboOff.Column(4)
Me.txtAdd5 = Me.cboOff.Column(5)
End Sub

不确定 tod 是做什么的??

【问题讨论】:

【参考方案1】:

如果我理解正确,您正在寻找“重新查询”语句。 这将“刷新”组合框或表单中的数据。 你可以放一个

 Me.Requery 

在相关的事件处理程序中。如果我没记错的话可能是“更新后”。

【讨论】:

不抱歉,它不是 Me.Requery,据我了解它会重新加载整个记录。我想知道的是;当我在控制级联组合框的记录之间移动时,由它更新的相关字段为空。在表单上打开记录时,我不知道如何填充这些字段。那有意义吗??无论如何感谢您的回复 嗨,我使用 form_current() 并在那里设置了值。感谢您通过 Loopo 提供的帮助。 使用 Me.NameOfCombo.Requery 单独重新查询组合。【参考方案2】:

试试

组合框中的行源 =

"SELECT DISTINCT table.field FROM table;"

在表中查找所有唯一值,将它们按字母顺序排列,然后将它们制成一个长下拉菜单。

【讨论】:

我不清楚这如何解决实际问题的任何部分。

以上是关于组合框值自动更新的主要内容,如果未能解决你的问题,请参考以下文章

使用组合框值更改时的新存储值更新/刷新 dojo 数据网格

使用组合框更改值单位时如何更新/转换数字文本框值?基于当前单位的值标准化?

自动更新文本框

Ms Access - 从组合框列更新图像

电脑系统总是自动更新怎么办

win10关闭自动更新