vb中怎么才能让它自动加最后一个数字
在点击一个command键时,Label中的显示的数字为自动搜索到数据库中的表格中的最后一个数字,在此基础上相加,这个代码怎么写(以下是自己写的,但是每次点击的时候总是从...
在点击一个command键时,Label中的显示的数字为自动搜索到数据库中的表格中的最后一个数字,在此基础上相加,这个代码怎么写(以下是自己写的,但是每次点击的时候总是从Label中显示的数字上加1,而不是从表格中的最后一位数字上加1)
Private Sub Command5_Click()
If checkdata = True Then
rs.AddNew
rs.Fields("drawingnumber") = Trim(Label4.Caption)
rs.Update
Static a As Double
a = Right(Trim(Label4.Caption), 7)
a = a + 1
Label4.Caption = "WS" & a
Call instore
MsgBox "新增数据成功!"
End If
End Sub 展开
Private Sub Command5_Click()
If checkdata = True Then
rs.AddNew
rs.Fields("drawingnumber") = Trim(Label4.Caption)
rs.Update
Static a As Double
a = Right(Trim(Label4.Caption), 7)
a = a + 1
Label4.Caption = "WS" & a
Call instore
MsgBox "新增数据成功!"
End If
End Sub 展开
2个回答
展开全部
问题:
a = Right(Trim(Label4.Caption), 7)
你这里给a赋的值就是在Label控件里提取的。之后加1当然是在a的基础上加1.
解决方法:
不知道你会不会从数据库里读取数据。
如果你的 rs 变量是用来控制数据库的。那么可以这样:
rs.MoveLast '-----移动到最后一条记录(忘记是不是这个了,但是可以找一找,有个方法是移动到最后一个)
a = val(rs["列名"])+val(0) '-----这里Val的目的是保证数据部会因为数据类型转换出现错误。
之后给 a 赋值就是在最后一条记录上加1了。
a = Right(Trim(Label4.Caption), 7)
你这里给a赋的值就是在Label控件里提取的。之后加1当然是在a的基础上加1.
解决方法:
不知道你会不会从数据库里读取数据。
如果你的 rs 变量是用来控制数据库的。那么可以这样:
rs.MoveLast '-----移动到最后一条记录(忘记是不是这个了,但是可以找一找,有个方法是移动到最后一个)
a = val(rs["列名"])+val(0) '-----这里Val的目的是保证数据部会因为数据类型转换出现错误。
之后给 a 赋值就是在最后一条记录上加1了。
更多追问追答
追问
刚刚试了一下,结果等于1,而我的数据库里的最后一个数是WS100000,我想得到是是WS1000001,麻烦你能不能说的清楚一点,我是刚刚学这个vb
追答
那就:
rs.MoveLast
Dim b As String
b = rs["列名"]
a = val(right(b,len(b)-2) + val(0)
试试
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询