Office中国论坛/Access中国论坛
标题:
连续生成编号问题!
[打印本页]
作者:
whyqwz
时间:
2005-8-26 06:23
标题:
连续生成编号问题!
我有50张面值50元的电话卡,编号从365001到365050,如何能在窗体中输入开始编号365001,结束编号365050,面值50元,就实现在表中就自动的增加50个记录,编号从365001到365050,面值都是50元?
请指教!谢谢
作者:
xlonger
时间:
2005-8-26 16:02
dao
作者:
sweetduck
时间:
2005-8-26 17:18
使用记录集操作
设计三个文本输入框(格式为数值型):开始编号,结尾编号,面值
一个命令按钮:添加新记录
Private Sub 添加新记录_Click()
For i = Me.开始编号 To Me.结尾编号
Dim m As Object
Set m = CurrentDb.OpenRecordset("表1")
m.AddNew
m("编号") = i
m("面值") = Me.面值
m.Update
Next
m.Close
End Sub
[此贴子已经被作者于2005-8-26 9:19:32编辑过]
作者:
CYH7201
时间:
2005-8-26 18:29
版主的方法太好了,先学习一下.再收藏
作者:
whyqwz
时间:
2005-8-28 04:21
这个办法真是好!谢谢!如果不用VB的方法,还有其他的办法吗?再次请指教!谢谢!![em01]
作者:
whyqwz
时间:
2005-9-4 05:28
最近我在拼命的学习VB,现在已开始有点懂了楼上的意思了!谢谢!VB真是好东西![em07]
作者:
syyudi
时间:
2005-9-4 23:42
我用insert into 折腾半天还没搞好,用
sweetduck
代码一下就搞定了,非常感谢。
作者:
syyudi
时间:
2005-9-5 04:45
有个新问题,如果想检查一下原数据表中是否有这些编号(可能是有一部分),没有的号码就加上,有就不加,该怎么做?谢谢。
作者:
sweetduck
时间:
2005-9-5 18:04
Private Sub 添加新记录_Click() Dim a, b
a = Me.开始编号
b = Me.结尾编号 Dim m As Object
Set m = CurrentDb.OpenRecordset("表1") Do While a <= b If DCount("编号", "表1", "编号 ='" & a & "'") > 0 Then a = a + 1 Else m.AddNew
m("编号") = a
m("面值") = Me.面值
m.Update a = a + 1
End If
Loop m.CloseEnd Sub
作者:
sweetduck
时间:
2005-9-5 18:06
以编号排序就可以按顺序显示了
作者:
syyudi
时间:
2005-9-5 23:45
Private Sub 命令35_Click()
Dim a
Dim b
a = Me.开始号码
b = Me.结束号码 Dim m As Object
Set m = CurrentDb.OpenRecordset("test") Do While a <= b If DCount("发票编号", "test", "发票编号= ('" & a & "')") > 0 Then a = a + 1 Else m.AddNew
m("发票编号") = a
m("开票人姓名") = Me.开票人姓名
m.Update a = a + 1
End If
Loop m.CloseEnd Sub运行后提示If DCount("发票编号", "test", "发票编号= ('" & a & "')") > 0 Then 出错请问' "& a &" '是什么意思? 我的“发票编号”字段是数值类型我将此句改成If DCount("发票编号", "test", "发票编号= val('" & a & "')") > 0 Then 为何陷入死循环,不停的添加纪录,a已经大于 b还不停。
作者:
syyudi
时间:
2005-9-6 00:09
问题好像出在第二次点击“开始号码”或者“结束号码”输入框后,自动循环开始。这两个文本框我没有设置事件。
作者:
sgrshh29
时间:
2005-9-6 00:54
就用3楼的代码不是很好吗?只要加二句判断号码是否已经存在,决定添加与否。
作者:
syyudi
时间:
2005-9-6 03:51
Private Sub 命令25_Click()
Dim m As Object
Dim aSet m = CurrentDb.OpenRecordset("test")
For i = Me.开始号码 To Me.结束号码
If DCount("发票编号", "test", "发票编号= val('" & i & "')") > 0 Then
Else m.AddNew
m("发票编号") = i
m("开票人姓名") = Me.开票人姓名
m.Update
End IfNext
Me.Requerym.CloseEnd Sub用这个代码搞定,可是按理说11楼的代码也可以,就是执行起来不对。还是想知道' "& a &" '是怎么回事?请各位老师指点。
作者:
sweetduck
时间:
2005-9-7 22:09
因为a并没有具体定义为数值型,所以要用引号
欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/)
Powered by Discuz! X3.3