自动生成当天日期的订单编号显示在组合框-KevinFan
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> Access数据库-查询/SQL语句


自动生成当天日期的订单编号显示在组合框

发表时间:2016/8/7 9:22:21 评论(2) 浏览(16619)  评论 | 加入收藏 | 复制
   
摘 要:自动生成当天日期的订单编号显示在组合框
正 文:

昨天有个网友在微信群内问窗体订单编号组合框中显示当天订单编号的问题,他的订单编号是按yyyymmddXX这种格式的(XX代表序号),如2016080601。其实这个问题很简单,将组合框行来源读取订单表的订单编号,设置好查询条件即可:

Select tbl订单资料.ID, tbl订单资料.订单编号 FROM tbl订单资料 Where (((Left([订单编号],8))=Format(Date(),"yyyymmdd"))) orDER BY tbl订单资料.订单编号;


但是网友说这个不是他想要的,他想要的是订单编号下拉菜单自动显示当天前10笔编号,不管有无订单。这样方便切换编号,不用每次都输入。我觉得这样做有问题,如果没有订单,那这些订单编号是无法打开对应资料的,或者订单编号超过10个,那么也显示前10,不是完整显示了。真要这样做,这个问题对应大神也就是一两分钟的事情,本着学习的态度,我试着写VBA代码,自动生成当天的订单编号,代码如下:

Private Sub Form_Load()
    '关闭操作提示
    DoCmd.SetWarnings False
    '删除表内全部内容
    DoCmd.RunSQL "Delete * From [tbl订单资料] "
    '定义变量,n是订单编号的序号
    Dim n As Integer
    For n = 1 To 10
    '将n作为序号写入表【tbl订单资料】的ID字段中
    DoCmd.RunSQL "Insert INTO tbl订单资料 (ID) VALUES (" & n & ") "
    '根据系统当前日期自动生成订单编号,如2016080101,如果要3位序号,改为Format(n, "000")即可
    DoCmd.RunSQL "Update tbl订单资料 Set 订单编号=" & Format(Date, "yyyymmdd") & Format(n, "00") & "  Where ID=" & n & ""
    Next
End Sub


以上是我对循环和Format函数的练习,因为实际上应该没几个人会有这样“不合理”的要求。

附   件:

点击下载此附件


Access软件网交流QQ群(群号:198465573)
 
 相关文章
两种按日期编号方法示例  【十段  2008/8/26】
【Access入门】vba代码新增生成自动编号字段的代码   【小赵  2014/5/22】
【Access示例】多类别自动编号示例  【易勋  2014/10/22】
自动编号模块  【月皓星隐  2015/9/9】
容易借鉴的自动编号  【半夜罗  2015/9/16】
常见问答
技术分类
相关资源
文章搜索
关于作者

KevinFan

文章分类

文章存档

友情链接