介绍了如何利用Excel的PowerPivot建立一个简单、规范的进销存系统。本文的重点是如何分析和输出数据,而不是原始表单的设计和输入。最近很多人,不管是不是IT人员,都在谈论大数据,云计算,数据挖掘,好像不说这些就跟时代脱节了。不管你喜不喜欢,数据库管理已经进入了生活的方方面面。新手对数据库很迷茫,尤其是用过Excel,热衷于简单电子表格的人。说到数据库名词的概念,感觉很复杂。从Excel2013开始,PowerPivot的这组应用程序和服务会在安装过程中自动添加。强大的分析功能可以代替Access数据库的一些基本功能,简化很多操作。
应用场景描述:管理员小云每天注册自己公司生产的产品。产品名称有上百种,每种产品平均有10种左右的规格。实际上,他要管理成千上万的SKU。需要每天记录进出SKU的数量,每月检查库存,每月找出库存低于安全库存的SKU,提交给生产部门。
需求分析:出入库标准化原始账;输出报表:计算月末库存和安全库存;盘盈盘亏调整记录。
1.建立三个基本数据表。
桌子的设计要规范,不能直接拿仓单进出。该规范的标准是符合数据库范式。有兴趣的话网上搜一下,没空的话就按图来。规范:第一行是标题行,第二行是数据行,每行是一条记录。建立:
编码表(SKU号、产品名称、型号规格、单位)
年初存货表(SKU号,年份,年初存货)
入库和出库仓库清单(SKU号、日期、入库和出库仓库号)
这里,SKU数是关键字段(标签),用它可以得到三个表的关联。有两个错误:编码表的SKU号不能重复;出入库表的日期应为日期格式,注意用减号“-”连接年、月、日。
2.使用PowerPivot的数据模型函数导入表。选择“编码表”的数据点击菜单中的PowerPivot点击添加到数据模型。然后会出现数据模型界面(又会弹出一个对话窗口),显示刚刚添加的码表的值。
注意:
第一次启动PowerPivot工具或组件会很慢。耐心点,不要急着操作下一步;
数据表不能重复添加,添加一次就够了;
数据模型中的表是链接表,是只读的。如果要修改它们,要回到Excel主界面修改工作表;
最好从整列到整列选择数据,不要只选择数据区,因为以后添加数据时,如果是选择区,链接表的选择范围会被修改。
然后,返回Excel主界面,做同样的操作,将“年初盘点表”和“仓库出入库表”添加到数据模型中。这三个表链接后,默认称为表1、表2、表3。为方便起见,分别更名为“码表”、“盘点表”和“入库和入库”。
3.在数据模型中建立关系。
“关系”是关系数据库中一个非常重要的概念。这里不发达。有兴趣可以去网上查一下。这里,“关系”用于将数据从一个表转移到另一个表。回到PowerPivot界面,单击右下角的关系视图。将编码表的SKU号码拖到库存表,然后将编码表的SKU号码拖到仓库出入口。这样就建立了两个一对多的关系。
4.用数据模型构建数据透视表。新建一个工作表“统计表”,插入透视表选择“使用此工作表的数据模型”。因为之前已经建立了数据模型,所以这个选项不灰显选择已有的工作表,统计表!A8,确认。
5.使用数据透视表显示每个SKU的入站和出站状态。
虽然之前改了名字,但是透视表还是显示表1,表2,表3。在这里,我们不得不把这个Bug放到一边,期待office的升级和解决方案。将表2中的年份拖到"筛选器",将SKU代码拖到"行",并将表2中的年初库存、表3中的出入库数量拖到"值"。这样,透视表将输出每个SKU的总入库数和总出库数,并显示期初库存。注意:系统会在值中加入汇总方式的描述,例如:以下字段汇总汇总:入库编号,我觉得太长了,已经手动改为入库编号。
6.用测量值计算期末存货。
在Excel界面下,菜单PowerPivot管理数据模型,进入PowerPivot界面。选择仓库进出表,点击链接表下方非数据区的单元格,点击公式栏。
期末存货:=sum([入库])-sum([出库]) SUM('存货表'[年初存货])
要计算安全库存,请在非数据区域选择一个单元格,然后单击公式栏。
最大出站数:=sum([出站数])
注意:公式栏可能不接受中文输入法。我在文本文件里打了中文然后复制粘贴;(2)[入库编号]字段名称,不能手工敲取,而是用鼠标点击该列;公式可以跨表引用列。例如,库存表的期初库存列适用于期末库存。
了解测量值。完成上述公式后,系统会立即显示结果,例如:135。你可能会想,这样的求和有什么意义?有意义!当前求和结果基于未分类的求和。当应用到刚刚创建的数据透视表时,它将由SKU求和。接下来,我们将讨论“时间表”,它将按SKU和时间段(如月和季度)进行汇总。
7.添加计划。回到Excel界面,选择数据透视表,将新建立的度量“期末库存”添加到值中。在点击完成的透视表的前提下,点击菜单分析过滤,插入明细表。有了这个计划表,你可以自由选择1-4月的入库量,1-12月的入库量,还可以看到期末库存随时间段的变化。
8.用每月交货数量计算安全库存。有许多方法可以计算安全库存。这里仅用最简单的一个来计算历史上单月出库股票的最大数量。如果当前库存低于此值,则需要补充入库库存的差额。第六步:仓库数量求和公式已经建立。接下来插入一个新的透视表,选择日期作为列标题(添加明细表后,会有更多的日期(月)度量值,系统会自动将这个度量值一起放入列标题)。交货编号的总和是值,SKU编号是行。将明细表与这个新的数据透视表相关联。
单击新建数据透视表设计合计选择仅针对列启用。N24框(根据新透视表实际位置)写标题:最大出货,O24框写标题:需要补仓。在N25中输入公式=MAX(B25:M25),在O25中输入公式=N25-VLOOKUP(A25,a9: e17,5)。A9:E17的面积取决于第一张数据透视表的实际面积。
9.赚了或者亏了怎么办?答:修改年初的盘点表。那么在这里,为什么要设置一年一次的年初库存,就是为了应对年度库存之后库存的变化。而且,也是因为这个原因,才把年份作为筛选条件。
10.如何显示产品名称?只看SKU代码是不直观的。如果添加了名称和规格,该怎么办?进入PowerPivot界面。选择编码表,在数据表区域增加一个名为“名称、型号、公司”的新列,在该列第1行的单元格中输入=[SKU号码]''[产品名称][型号规格]'和'[公司]进行选择。系统会自动填充整列。回到Excel界面,对透视表的所有行标题使用“名称、型号、公司”即可解决问题。
注意事项:
1.以上操作过程几乎不对原表进行操作,可以保证原表数据不会被破坏。
2.上述表格格式是最基本的格式,并且