楼主 lrlxxqxa |
无论是商品流通业还是生产制造业,都离不开商品采购入库、销售出库的动态管理,设计创建个性化的进销存表格,不但能够提高工作效率,而且根据查询统计可以做出及时准确的业务决策。 下面结合一个实例,介绍如何综合应用Excel中的函数公式、SQL查询、数据透视表、VBA代码以及数据库函数来创建小型的仓库进销存管理和查询软件。 首先说设计思路: 实际工作中,需要仓库的工作人员在数据源表中录入流水明细,即可通过查询统计出入库信息。 1、为了满足不同盘点和统计周期的需要,我们将数据源表划分为“期初”、“入库”和“出库”三张,这样无论是汇总或拆分数据都清晰便利; 2、为了避免人为输入错误导致查询出错,需要使品名统一,所以我们将需要录入品名的位置设置数据有效性; 3、为了提高工作效率,设置辅助信息工作表,将品名对应的单价存放起来,当在数据源表中输入品名时,能够自动提取对应的单价; 4、为了使数据源表中的记录添加时,设置的公式能够自动扩展,将数据源区域转化为表(2003中叫列表); 5、利用SQL语句创建动态的数据透视表,查询统计出、入库的数量和金额信息; 6、在使用过程中,由于地域和使用人不同,Excel工作簿被放置的位置和被设定的文件名也不同,要求工作簿改变路径和文件名后,数据透视表能够自适应刷新。这里利用VBA代码后台辅助实现。 7、为了便于即时查询和统计,也为了打印入库和出库表,还需要设计一个打印界面。这里考虑到数据源记录可能很多,可以利用源表结构的规范性,使用数据库函数来提高运算性能。 再来看下界面: 数据源界面包括三张工作表,分别为“期初”、“入库”、“出库”,结构如下所示: 辅助设置工作表如下: 统计界面如下: 打印界面如下: 进销存统计表.rar |
2楼 lrlxxqxa |
在辅助工作表‘设置’中,我们定义一个名称“品名”,使添加新的产品时,数据有效性的源能够自动扩展。 品名
将需要输入品名的位置设置数据有效性,序列来源=品名。 为了美化界面,使用条件格式设置动态边框,
Ctrl+L或者Ctrl+T将数据区域设置为表,包含标题行。然后设置公式。 D列单价根据品名自动提取 D2
E列金额根据输入的数量和单价自动生成 E2
“出库”和“入库”表的设置和“期初”表原理相同,不再赘述。 |
3楼 lrlxxqxa |
利用SQL创建动态数据透视表
创建计算字段“结存”和“结存金额” 结存
同法设置“结存金额
为了便于使用2003版本的网友,数据透视表使用了条件格式设置边框,放置刷新后边框消失
字段行和总计行完成美化。 |
4楼 lrlxxqxa |
为了使SQL创建的数据透视表能够自适应路径和文件名改变,使用VBA代码后台辅助。 Alt+F11进入VBE界面,插入模块,输入代码:
数据透视表自适应的VBA代码 http://www.exceltip.net/thread-7995-1-1.html 如何让EXCEL中所有引入外部数据的透视表和SQL查询表自适应路径和文件名更改 http://www.exceltip.net/thread-9385-1-1.html |
5楼 lrlxxqxa |
在打印界面中,利用自定义名称“品名”来提取其中的每个元素,多余行置空。 B7输入公式
A列序号设置,根据品名智能添加 A7输入公式
C和D列是日期信息,配合F3:F4的查询起始及终止日期,用以构建数据库函数的条件区域; C7
“数量”和“金额”列使用数据库函数配合SUM函数来统计对应品名的数量和金额信息。 如果是2007以及以上版本,可以直接在数据库函数中使用结构化引用功能,直接引用表名称作为DSUM函数的第一参数; 推荐资源: 什么叫结构化引用 http://www.exceltip.net/thread-3222-1-1.html 结构化引用中“表1”与“表1[#全部]”的区别是什么? http://www.exceltip.net/thread-5152-1-1.html 如何在数据库函数的条件区域中使用结构化引用功能? http://www.exceltip.net/thread-26971-1-1.html E7输入公式
如果使用的是2003版本,则需要先定义两个名称,分别引用入库和出库工作表的数据源区域,再将其作为DSUM函数的第一参数。 定义“入库”
|
6楼 lrlxxqxa |
至此,进销存的主体结构已经完成,基础功能实现。在此基础上,还可以进行细化,比如出入库数量的输入约束,利用数据有效性限制为整数;出库数量的限定,不得亏负数库存;产品信息的单价跨年变更;数据表公式的隐藏与保护等。 还有一些个性化的设置,要根据需求设计并完善。这里就不过多阐述了。 |
7楼 eliane_lei |
借鉴学习,慢慢消化中!谢谢分享 |
8楼 rabbitllu |
很强大呢, 学习 |
9楼 rabbitllu |
锐版,我在“入库”这张增加了一行,边框有变动,如图: |
10楼 lgcmeli |
很好的作品分享。收藏了。 |
11楼 rhr2008 |
谢谢老师!好好学习下! |
12楼 ☆爱咋咋地☆ |
虽然没看懂,但是要学习 |
13楼 pcwmmn |
好!谢谢! |
14楼 MOUSEJAME |
但是如果是相同的产品,但是单价不一样,那这样也可以用吗? |
15楼 ☆爱咋咋地☆ |
如何自适应呢 |
16楼 chenning_0517 |
非常好 ,感谢 |
17楼 isabella9897 |
谢谢锐版的分享,超级实用的一个进销存库存表,但我在实际应用中碰到一个问题,在实际进货和出货中,我们的进货单价与出货单价是随时变动的,比如说打折促销等。这时,要怎么办呢?请大家帮忙啊 |
18楼 山城一张 |
好东西 |
19楼 じ☆潴の︵ゞ |
|
20楼 aczkk |
看了,感觉不错,谢谢您提供 |
21楼 一聚氨酯 |
好文章支持一下了 |
22楼 amylee |
感谢版主的无私奉献。收藏了,还得慢慢消化。 |
23楼 ←☆╮自由メ |
不太懂 |
24楼 drinker007 |
找个时间好好来学习一下进销存,太有用了 |
25楼 lrlxxqxa |
综合应用Excel中的函数公式、SQL查询、数据透视表、VBA代码以及数据库函数来创建小型的仓库进销存管理 |
26楼 海洋之星 |
谢谢锐哥分享,学习了 |
27楼 芐雨 |
|
28楼 gzdragon |
如何回帖。 |
29楼 gaokaozhu |
收藏研究谢谢分享 |
30楼 lrlxxqxa |
|
31楼 ze001 |
谢谢分项,慢慢消化 |
32楼 小同学大衣柜 |
能帮我把我这个填一下公式吗 空白库存模板41(鞋、服装).rar |
33楼 老百姓 |
支持 支持 支持 支持 支持 支持 支持 支持 支持 支持 |