当前位置:编程学习 > VB >>

流水号问题

请高手指点:
我希望得到的结果是No201004080001-01
                  No201004080002-01.。。。。。
                  No201004090001-01 
下面代码的流水号不是按日期清零的,一直累加。
Private Sub 备注_Enter()
On Error GoTo AddNew
    If IsNull(备注.Value) Then
      备注.Value = "No" & Format(Date, "yyyymmdd") & Format(CLng(DMax("mid(备注,11,4)", "数据表") + 1), "0000") & "-01"
    End If
    Exit Sub
AddNew:
    If Err.Number = 94 Then
        备注.Value = "No" & Format(Date, "yyyymmdd") & "0001-01"
    End If
End Sub --------------------编程问答--------------------
引用楼主 zhaoyangzzy138 的回复:
AddNew:
  If Err.Number = 94 Then
  备注.Value = "No" & Format(Date, "yyyymmdd") & "0001-01"
  End If


再看看。 --------------------编程问答-------------------- 用 DMax 求最大值时加上日期条件:
DMax("mid(备注,11,4)", "数据表","mid(备注,3,8)='" & Format(Date, "yyyymmdd") & "'") --------------------编程问答-------------------- 不行啊,流水号变成了No201004082010-1-1了
Private Sub 备注_Enter()
On Error GoTo AddNew
  If IsNull(备注.Value) Then
  备注.Value = "No" & Format(Date, "yyyymmdd") & Format(CLng(DMax("mid(备注,11,4)", "数据表","mid(备注,3,8)='" & Format(Date, "yyyymmdd") & "'") + 1), "0000") & "-01"
  End If
  Exit Sub
AddNew:
  If Err.Number = 94 Then
  备注.Value = "No" & Format(Date, "yyyymmdd") & "0001-01"
  End If
End Sub --------------------编程问答-------------------- 2楼是说DMax函数里面加个参数条件,你这里是加了条件,不过不知道你这个函数是怎么写的。 --------------------编程问答-------------------- 我是按2楼的方法直接放上去的。 --------------------编程问答-------------------- DMax函数要改,你直接放上去居然不报错? --------------------编程问答-------------------- 没有报错,结果是NO201004082010-1-1 --------------------编程问答-------------------- 这不是我要的结果,我希望是:
No201004080001-01
No201004080002-01
No201004090001-01
No201004090002-01 --------------------编程问答-------------------- 2楼、4楼的达人,请告诉我怎么修改,谢谢! --------------------编程问答-------------------- 没有错误,结果就是:
No201004090001-01
No201004090002-01

建议新建空白数据库进行测试。
补充:VB ,  VBA
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,