2013-04-07 77 views
0

问题:MS Access 2007中使用下拉框来填充画面

我需要什么,我的形式做的,所以我可以使用ComboBox,并将它自动填充的形式和桌子上的图片?

的信息:

在Microsoft Access 2007,我有1台和1种形式。该表包含名称,电话号码,地址和图片的所有信息,它们都以表格形式出现。我有com,fam1,fam2和fam3的组合框,当我在组合框上选择一个名称时,它会自动填充表格上的信息,并为com,com phone和com地址填写表格,但不是图片。我在想,我需要为组合框的“变化”做一些VB编码。图1显示了表格的格式。图2显示了表格的格式。

Picture1 http://dplcollagentherapy.com/pic01.JPG

Picture2 http://dplcollagentherapy.com/pic02.JPG

+0

在您的表单布局中,我看到一个控件对应于表中的每个字段。这就说得通了。我不*看到的是为什么这些图片应该改变(除非你导航到表中的另一个记录)。假设你从'Com'组合框中选择一个新值。这将改变表中该记录的'Com'字段中的值,但它不会影响'[com picture]'字段。有没有其他的背景处理发生,你忘了提及? – 2013-04-07 21:22:51

回答

0

我能弄清楚如何更新COM手机,并与下面的代码的通信地址。但comboBox并没有让我把图片添加到第3列中,这会让这更容易。我会在某个时候发表一份报告,报告可能会更容易查找图片。不知道我会为查找编码。再次感谢你。 代码

Option Compare Database 

Private Sub Combo30_Change() 
Me.txtcomphone.Value = Me.Combo30.Column(1) 
Me.txtcomaddress.Value = Me.Combo30.Column(2) 
Me.com_picture = dlookup("name", "Elders", "Name=" & Com) 
End Sub 

Private Sub Combo32_Change() 
Me.txtfam1phone.Value = Me.Combo32.Column(1) 
Me.txtfam1address.Value = Me.Combo32.Column(2) 
End Sub 

Private Sub Combo48_Change() 
Me.txtfam2phone.Value = Me.Combo48.Column(1) 
Me.txtfam2address.Value = Me.Combo48.Column(2) 
End Sub 

Private Sub Combo56_Change() 
Me.txtfam3phone.Value = Me.Combo56.Column(1) 
Me.txtfam3address.Value = Me.Combo56.Column(2) 
End Sub 
0

我会做它不把在表中的实际图像,但把他们所有的表格上的方式。为每张图片分配与其关联的字段相对应的唯一名称。每张照片都设置为不可见。然后,在VBA你可以写这样的代码:

If Me.ComboBox = Name Then 
Me.NamesPicture.Visible = True 
Else 
Me.NamesPicture.Visible = False 
End If 

可以堆叠在彼此的顶部所有的图片和VBA运行速度非常流畅,我用它在过去的工作中的小项目。希望这会有所帮助! :)