Office中国论坛/Access中国论坛

标题: 自动编号出现类型不匹配? [打印本页]

作者: jsf2008    时间: 2009-10-31 11:50
标题: 自动编号出现类型不匹配?
Private Sub Form_Load() PH.Locked = True End Sub Private Sub PH_GotFocus() Dim a As Long Dim b As Long a = Format(Date, "yyyymmdd") b = Left(DMax("PH", "商品资料"), 12) If Me![PH] <> "" Then Exit Sub End If If b >= a Then Me![PH] = DMax("PH", "商品资料") + 1 Else Me![PH] = Format(Date, "yyyymmdd") & 0 & 0 & 0 + 1 End If PH.Locked = True End Sub Private Sub PH_LostFocus() PH.Locked = False End Sub

PH字段为文本类型,请问自动编号出现类型不匹配?
作者: jsf2008    时间: 2009-10-31 11:52
Option Compare Database
Private Sub Form_Load()
PH.Locked = True
End Sub



Private Sub PH_GotFocus()
Dim a As Long
Dim b As Long
a = Format(Date, "yyyymmdd")
b = Left(DMax("PH", "商品资料"), 50)
If Me![PH] <> "" Then
   Exit Sub
End If
If b >= a Then
       Me![PH] = DMax("PH", "商品资料") + 1
Else
  Me![PH] = Format(Date, "yyyymmdd") & 0 & 0 & 0 + 1
End If
PH.Locked = True
End Sub

Private Sub PH_LostFocus()
PH.Locked = False
End Sub
作者: jsf2008    时间: 2009-10-31 11:53
b = Left(DMax("PH", "商品资料"), 50)           ??请问我PH为文本,是不是定义错了》请帮帮忙
作者: jsf2008    时间: 2009-10-31 15:14
????没有人帮忙呀
作者: jsf2008    时间: 2009-10-31 15:23
请看附件
作者: kangking    时间: 2009-10-31 16:53
你的 B 定义为长整型,应该用下句
b = Val(Left(DMax("PH", "商品资料"), 50))
作者: jsf2008    时间: 2009-10-31 18:01
按你的意思没有出错了,是不能自动编号了
作者: kangking    时间: 2009-10-31 18:19
看了你的代码,不知道你要什么样的编号,是nak001,nak002这样一直编下去吗?请详细说明你的编号原则。
作者: jsf2008    时间: 2009-11-2 09:13
按日期例如:20091031,想编成:091031001----091031002----091101001-----按系统日期递增001---009--010。012。013----------
作者: kangking    时间: 2009-11-2 10:22
示例
作者: jsf2008    时间: 2009-11-2 10:42
请问你自动编号不递增。编号都是相同的
作者: kangking    时间: 2009-11-2 10:50
一定是见鬼了,我明明做好的,怎么都一是我写的代码了?
作者: jsf2008    时间: 2009-11-2 11:05
把你的下载下来就能不递增的。
作者: kangking    时间: 2009-11-2 11:17
再发一次,但愿这次不会出鬼。
作者: jsf2008    时间: 2009-11-2 11:50
谢了,差不多了




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