我们已经准备好了,你呢?

2024我们与您携手共赢,助您领跑移动端创新增长!

  Excel不是万能的,但办公应用离开它是万万不能的。

  这就是说目前的办公方式早已经不是笔墨纸砚来记账了,数字化办公加快了行政办公效率,如果还有人在一堆纸里写写划划,那么不是特殊行业,就是对这个世界认识不清。

  配送是一个动态变化过程,由于其数据有动态行为,所以使用Excel编程的时候,会用到很多动态检索功能,以保证当前数据为最新。

  所以,在编程本应用的时候也浪费了不少时间,来处理动态数据的静态统计。

  下面看一下是如何实现配送管理过程的。

  下图为操作主页,分别设置了一个订单录入和一个生成配送单按钮。

  工作表内容为订单记录表,通过下图表单可以实现订单的录入和新建。

  下图为生成配送单操作窗体,可以明显看到这里有很多按钮,其大部分功能在这个窗体中实现。

  由于其执行过程并不能看到其运行,所以这里简单介绍一下有哪些功能。

  通过日期下拉框可以选择月份和日期,一般情况下会自动默认当日的月份和日期。

  第一个按钮,生成今天配送单,很好理解,单击它会生成当天要配送的记录,其生成规则是,依据订单来进行的。

  比如,某个用户订了300件的送单量,那么就会在这一数据未送完时自动新建,如果已经送完了,那么就不新建当日的送单,当然了,还有很多要判断的条件进行设置。

  下图为生成的订单记录:

  第二个按钮,重置今天配送单,假如当天生成的订单错误,或是某些客户当天不需要配送,可以重新生成订单号,生成之前有一个选择,可以取消某些订单不生成。

  如不生成订单,自然也不会在记录中进行登记。

  这部分操作有些繁杂,先把已经生成的订单删除后,再次生成当日订单。

  第三个按钮,月配送统计,很简单就是统计某个月的订单记录,包括数量,金额,付款,利润等数据。

  第四个按钮,日配统计,也就某一天的配送情况。

  第五个按钮,查看统计结果,这个功能实现查看统计结果,实际上每次统计之后会自动刷新窗体表内容。

  第六个按钮,打印统计结果,很明显就是实现打印输出,可以把统计结果打印出来,无论是什么统计都可以使用这个功能实现。

  配送管理,实际上还是有一些可以深入研究的一个应用过程,通过VBA处理之后,可以方便地生成当天要配送的订单,然后下发给配送员。

  如果,生成二维码,就更加方便了。

  当然了,也不是不可能,只不过需要一些时间来进行编码,在以前文章里有相关内容与讲解,这里不做过多介绍了。

  代码

  Private Sub 生成配送记录()'生成日配送单On Error Resume NextApplication.ScreenUpdating = FalseDim s As WorksheetSet s = ThisWorkbook.Worksheets(xPsheet)If s Is Nothing Then Exit SubDim xArr, xi As Long, ir As Long, ic As LongDim cArr, ci As LongDim eArr, ei As LongDim NowDay As DateNowDay = VBA.Format(VBA.Date, "yyyy/mm/dd")xArr = s.Range("A2").CurrentRegionIf CloseModes = 0 Then Exit SubIf dArr(1) = "" Then Exit Subir = UBound(xArr, 1)ic = UBound(xArr, 2)If VBA.Err.Number <> 0 Then Exit SubReDim eArr(LBound(xArr, 1) To ir)For ei = LBound(xArr, 1) + 1 To ir eArr(ei) = xArr(ei, 2)Next eiSumxCount "业主订单记录", 11 '计算刷新已送数量Dim diArr As Variant, di As LongFor xi = 2 To ir For di = LBound(dArr) To UBound(dArr) '判断订单 是否不进行送货 diArr = VBA.Filter(eArr, dArr(di)) '返回查询订单号数组 If diArr(0) <> "" Then If xArr(xi, 2) = diArr(0) Then If VBA.DateDiff("d", xArr(xi, 3), NowDay) >= 0 Then '下单日期正确 If xArr(xi, 8) > xArr(xi, 11) Then '订购数量大于已送数量 '收集数组值 ReDim cArr(1 To ic) For ci = 1 To ic cArr(ci) = xArr(xi, ci) Next ci cArr(1) = "=row()-2" cArr(3) = VBA.Format(VBA.Date, "yyyy/mm/dd") cArr(11) = "=G3" '已送数 cArr(12) = "=G3-K3" '未送 cArr(13) = "=I3*K3" '销售额 cArr(14) = GetSale '应付款单价 cArr(15) = "=K3*N3" '应付款 cArr(16) = "=M3-O3" '利润 '执行新建订单 SaveXsheetList cArr Erase cArr End If End If End If End If Next diNext xiErase xArrErase eArrErase dArrErase diArrSet s = NothingShowListViewApplication.ScreenUpdating = TrueEnd Sub

  订单管理过程就写这么多,实际应用当中还有许多要修改的地方,在此只是抛一块砖,希望有些需求的你,可以获得一些启发。

  欢迎关注、收藏

配送员软件开发(vba编程,3天制作一个配送管理应用,Excel就是这么强大)

  ---END---

我们凭借多年的APP小程序开发经验,坚持以“个性定制 源码交付 独立部署 满意为止”为宗旨,累计为5000多家客户提供品质服务,得到了客户的一致好评。即刻开启你的小程序/APP,帮您轻松抢占千亿流量红利,助您轻松获客!
立即咨询: 13716188458 / 18588225959,助您抢占市场先机。项目经理在线

我们已经准备好了,你呢?

北京麦蒙科技有限公司与您携手共赢,助您领跑移动端创新增长

售前咨询
咨询电话

13716188458

18588225959

在线留言
扫码加微信
微信
在线留言
* 请输入姓名
* 请输入有效联系方式
请输入您的需求:
* 请输入需求
提交成功