ID 名称 日期
1 A 2005-06-07
1 A 2006-03-02
1 A 2007-01-02
如何在窗体中的文本框(Text1)中输入ID号后自动在DTPicker1控件中填充最新的日期即2007-01-02,在VBA中调用DLast函数就能实现,在VB中是否也能调用
max 是后台所用函数。。。。
你在前直接用当然提示....
申明一个记录集。。。
Dim objCn As New Connection
Dim objRs As New Recordset
objcn.open"连接"
objrs.open "select max(date) from 表 where id='"& text1.text &"'",objcn, adOpenKeyset, adLockOptimistic
if objrs.eof = false then
DTPicker.values=objrs.fieilds(0)
else
msgbox "编号输入有误。数据库无此资料!"
end if
提示,至少有一个参数没有被指定值
代码如下:
Public adoCon As New ADODB.Connection
Public adoRs As New ADODB.Recordset
Public Sub Main()
Dim str As String
str = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\backstage\backstage.mdb;Persist Security Info=False"
adoCon.Open (str)
End Sub
Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = 13 Then
call main
adoRs.Open "select max(date) from 药品拆零销售记录 where 品种剂型='" & Text1.Text & "'", adoCon , adOpenKeyset, adLockOptimistic
If adoRs.EOF = False Then
DTPicker.Values = adoRs.Fields(8)
Else
MsgBox "编号输入有误。数据库无此资料!"
End If
表结构如下:
品种剂型 规格 数量 批号 有效期至 单价 生产企业 拆零日期 销售数量 结存 经人
四环素片 0.25g 100S 070506 20090505 4.00 ********* 2007-07-05 20 80 ***
四环素片 0.25g 100S 070506 20090505 4.00 ********* 2007-07-06 20 60 ***
四环素片 0.25g 100S 070506 20090505 4.00 ********* 2007-07-06 30 30 ***
text1 text2 text3 text4 text5 text6 text7 DTPicker1 text8 text9 text10 对应窗体上的控件
如果要提取结存(最小数量)到窗体的text3(数量)是不是也用MAX函数,
我是刚从ACCESS转过来的,不懂之处望各位学长不要风笑