ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 96493|回复: 177

[分享] sql语句 按数量移动分配

[复制链接]

TA的精华主题

TA的得分主题

发表于 2010-7-14 17:03 | 显示全部楼层 |阅读模式
仓库里有某商品NN个,急着卖出去
业务员们很能干,找来了一堆客户,得到了一堆数量不等的订单。
订单合计数量不小,先给谁?,先来的先给,有多少先给多少

这种提货单,用vba来完成很简单。可现在各种数据都在数据库里,就得用sql语句来完成了

类似问题困扰了我很长时间,这次算是写成功了,拿出来与大家分享

sql语句部分思路如下:
sqlA = "select 商品,sum(数量) as 数量,sum(数量*单价)/sum(数量) as 单价 from [库存$] GROUP BY 商品"
汇总库存表的各类商品的总数量
sqlB = "select b.id,b.客户,b.商品,b.数量,(select sum(a.数量) from [订单$] a where a.id<=b.id AND a.商品=b.商品) as c from [订单$] b"
订单表的查询结果里增加一个字段,该字段是不同商品种类连续的累加
sqlC = "select 客户,a1.商品,a1.数量,c,a2.数量,单价,a1.数量-c+a2.数量 as d from (" & sqlB & ") a1,(" & sqlA & ") a2 where a1.商品=a2.商品"
用"各类库存商品的总数量"和"不同商品种类连续的累加"计算出每种商品的实际可供给数量
sql = "select 客户,a1.商品,iif(a1.数量<=d,a1.数量,d) as 数量,单价,数量*单价 as 金额 from(" & sqlC & ") where d>0"
这句是上句的延续,排除掉所有无货可给的记录

另一种用法: 导入外部数据+SQL语句,不用写代码。具体操作下载附件3,按照帖子的图示操作

[ 本帖最后由 HHAAMM 于 2010-7-18 13:26 编辑 ]

按图操作

按图操作

出现这个对话框后选择文件

出现这个对话框后选择文件

选择好文件后点击打开

选择好文件后点击打开

选择A$,点击确定

选择A$,点击确定

点击 编辑查询

点击 编辑查询

这里的命令类型要选择 SQL

这里的命令类型要选择 SQL

用ctrl+v的方式粘贴已经复制过的sql语句

用ctrl+v的方式粘贴已经复制过的sql语句

点击确定

点击确定

完成的样品

完成的样品

SQL移动分配.rar

10.69 KB, 下载次数: 1340

SQL语句 多批次移动分配.rar

10.98 KB, 下载次数: 1212

更新

SQL语句 多批次分配(导入数据的方式完成,不用写代码).rar

2.67 KB, 下载次数: 971

TA的精华主题

TA的得分主题

发表于 2010-7-15 00:16 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2010-7-15 00:19 | 显示全部楼层
版主的实例
相对比较简单

但版主的功力
非常深厚!!!!

TA的精华主题

TA的得分主题

发表于 2010-7-15 00:37 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
菜鸟

自身
工作(服装行业)
提供
一实例

本单位

上千家
零售店
每一家零售店都装有PS系统
数据的传输:
以文本邮件方式传输
然后
导入合并成一张表格

接下来的功能

版主的实例相似:
按---客户----优先顺序去分库存(海量品种,海量数据)
同时
库存也随之减少!!!
(说明:本单位的行业软件已对这一功能完成)

[ 本帖最后由 lym321 于 2010-7-15 00:42 编辑 ]

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-7-15 00:43 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
楼上
你说的,如果数据是在excel里的话,实现起来很简单,可在本版块上传个有详细说明的附件

TA的精华主题

TA的得分主题

发表于 2010-7-15 00:46 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
现在
本菜的
意思是指:能否用Excel+Access来完成此功能
按---客户----优先顺序去分库存(海量品种,海量数据)
同时
库存也随之减少!!!

敬请版主
向这方面
提供些实例
谢谢!!!

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-7-15 00:49 | 显示全部楼层
http://club.excelhome.net/thread-595533-1-1.html
这是我写的可能与你的行业软件类似,就是在Access里实现的,不过是vb6+Access

TA的精华主题

TA的得分主题

发表于 2010-7-15 00:59 | 显示全部楼层
客户,订货,
库存记录索引号,,,消记录,余记录
算价格,金额,
呵呵,绕晕了,,

TA的精华主题

TA的得分主题

发表于 2010-7-15 01:04 | 显示全部楼层
谢谢版主
担供案例

关于求助
附件
本菜明天
才上吧!!!

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-7-15 03:44 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
附件更新;
实现了4楼说的“海量品种,海量数据”
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-23 07:20 , Processed in 0.038055 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表