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
展开
 我来答
制作问题专家
2013-04-12 · TA获得超过129个赞
知道答主
回答量:109
采纳率:0%
帮助的人:103万
展开全部
问题:
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)

试试
robgxb000
2013-04-12 · TA获得超过206个赞
知道小有建树答主
回答量:245
采纳率:0%
帮助的人:157万
展开全部
看你代码中,rs是不是你所说的表格的数据库?
你既然想让最后一个数加1,你的a 开始就应该=最后一格的数才行啊
a = Right(Trim(Label4.Caption), 7)是不对的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式