Office中国论坛/Access中国论坛

标题: 有关VBA的两个问题寻求帮助,谢谢。 [打印本页]

作者: Kevin12    时间: 2020-4-20 14:09
标题: 有关VBA的两个问题寻求帮助,谢谢。
本帖最后由 Kevin12 于 2020-4-20 14:13 编辑

问题1:
在Access中新建了一个表FT(ID,型号,系数1,系数2),在窗体中新建了组合框Combo1,新建了文本框Text1,新建了按钮Command1。
想要通过VBA实现的功能是:在组合框Combo1中选择型号(也就是表FT中的型号),然后通过该型号获得对应的表FT中“系数1”中的值,以及对应的表FT中‘系数2”中的值,然后文本框Text1的值等于表“系数1”中的值乘以表‘系数2”中的值
举例:选择了型号0001-0029,然后点按钮Command1,在文本框Text1中显示的值=85.13*59.55=5069.4915。我根据书本和网上的资料写了一些代码都没有实现该功能,不知道能否帮忙演示一下完整的VBA代码?
表FT

[attach]63749[/attach][attach]63752[/attach]
C:\Users\zhux\Desktop\55.jpg
问题2:以上的型号是通过下拉列表选择得到的,但是型号很多的话选起来很麻烦。是否可以录入部分数字,然后缩小范围再选择。
举例:型号中有0001-0029, 0001-0038,0001-0045.如果录入0001-00后就能自动的显示这3个型号,其他型号不显示,然后就可以选择正确的那一个。该如何实现?

作者: Henry D. Sy    时间: 2020-4-20 19:04
可以,但你必须传例子
作者: Henry D. Sy    时间: 2020-4-20 23:10
  1. Private Sub Combo0_AfterUpdate()
  2.     If Not IsNull(Me.Combo0) Then
  3.         Me.Text2 = Me.Combo0.Column(1) * Me.Combo0.Column(2)
  4.     End If
  5. End Sub

  6. Private Sub Combo0_Change()
  7.     Dim sSQL As String
  8.     sSQL = "SELECT 型号,系数1,系数2 FROM FT WHERE 型号 LIKE '" & Me.Combo0.Text & "*'"
  9.     Me.Combo0.RowSource = sSQL
  10. End Sub
复制代码

作者: Kevin12    时间: 2020-4-22 13:45
收到,多谢呀,多谢帮助。




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3