我目前正在为我的家庭计算机业务的库存编写一个数据库,似乎遇到了一些麻烦。我的问题是:
Microsoft Access是否可以根据组合框中的选择结果更新表单上的字段,但仍然可以更新更新的字段?如果是这样,我该怎么做?
示例:
表1(名为Defaults)具有“Name”,“Processor Speed”,“Memory Size”和“Hard Drive Size”字段。这保留了每个“名称”应该是这些值的“默认值”。
示例:
Dell OptiPlex 520,2000MHz,1GB和80GB。
Dell OptiPlex 620,2200MHz,1.5GB和120GB。 等
表单正在将数据输入到名为“Inventory”的第二个表中。该表单包含一个要选择的名称列表,以及用于填写处理器速度,内存大小和硬盘驱动器大小的位置,以及序列号,已安装的软件,上次使用的日期等。
当我选择“戴尔Optiplex 520”从下拉框中,我想要的形式来更新与所述默认为它的文本字段,但这些字段仍然需要可改变(例如,如果有存储器安装的2GB)记录到第二个表格,这是我运行报告的地方。
我目前正在使用VLOOKUP处理Excel电子表格,以便在更改名称时更新值,但我不确定如何使此概念在Access中有效。我尝试过使用DLOOKUP命令,但它似乎对我不起作用。我很可能没有正确使用它。
我认为这将有事情做对组合框,然后有一些VBA代码,看看“名称”字段的表单上的“更新后”属性中,从“默认检索与该名称关联的值“表,并将它们写入表单上的其他文本框,但我仍然不确定如何实现这一点。
提前感谢您在此方面提供的任何帮助!
答案 0 :(得分:0)
以下是HowTo:
在此表单中添加一个组合框。调用组合框ComboDefaultPCs并更改以下属性:RowSource:ql_DefaultPCs,列数:4,列宽:4cm; 2cm; 2cm; 2cm
添加以下代码:
Private Sub ComboDefaultPCs_Click()
PcType = ComboDefaultPCs.Column(0)
Speed = ComboDefaultPCs.Column(1)
Ram = ComboDefaultPCs.Column(2)
HDD = ComboDefaultPCs.Column(3)
End Sub
您仍然必须自己编写代码以在库存表中创建新记录并保存记录。您可以在组合框中选择一个默认PC,它将填写清单表的字段。您可以覆盖所有这些字段,但不会更改默认值。