进销存excel_用Excel制作简单的进销存系统「建议收藏」

进销存excel_用Excel制作简单的进销存系统「建议收藏」最近刚好帮一个朋友做一个进销存系统,因为使用者对电脑操作以及Excel应用能力较弱,我做的进销存系统没有用特别复杂的功能,非常有解决意义,我将手把手将你制作一个简单的进销存系统。需求描述朋友找人合伙开了一个女装店,想要用Excel记录每天的销售数据、定期的进货数据,以及定期盘点库存情况。朋友的合伙人对电脑操作、Excel数据管理能力较弱,前期购买过专用的进销存软件,但是经常会把数据搞乱,因此放弃了…

大家好,又见面了,我是你们的朋友全栈君。

最近刚好帮一个朋友做一个进销存系统,因为使用者对电脑操作以及Excel应用能力较弱,我做的进销存系统没有用特别复杂的功能,非常有解决意义,我将手把手将你制作一个简单的进销存系统。

需求描述

朋友找人合伙开了一个女装店,想要用Excel记录每天的销售数据、定期的进货数据,以及定期盘点库存情况。

朋友的合伙人对电脑操作、Excel数据管理能力较弱,前期购买过专用的进销存软件,但是经常会把数据搞乱,因此放弃了,希望使用Excel傻瓜式的记录销量。

框架设计

01、进货记录表:这是整个进销存报表的基础,所有的字段都从进货记录中生成

如图是进货记录表,使用的是智能表格,表格区域会随着数据的填写自动扩展,并延续设置好的格式。这个报表中的每个字段中的内容都需要手工录入,因为他们是后续销售记录表下拉菜单的数据源。

112777f9348327fbc8aae01a113d6bed.png

①为了防止数据录入错误,对【进价】、【定价】、【数量】进行了“数据验证”设置,如图所示,要求只能录入数字,而不能录入其他形式的数值。

ee012cb2117c47b0c003b98c5a561c96.png

②同时,设置出错警告,根据前期测试常见的错误,提示使用者修改录入的错误的内容。

f8231648eaaac1af0fbef36e164379d4.png

③J列的日期,使用日期函数将A、B、C列录入的年月日转化为标准的日期。

公式为=DATE([@年],[@月],[@日]),注意,因为数据区域已经转化为智能表格,所以公式中的引用为结构化引用。

④数据录入完成之后,永续需要点击右上角的刷新按钮,这是录制的一个宏,它的作用是全局刷新数据透视表,至于为什么要这样做,下文会进行讲解。

02、销售记录表:这是进销存报表的主要数据源

销售记录表中的字段要多一些,但是这个表中很多字段的内容填写起来却没有那么麻烦,填写方式分为三种:

80191ff26a071895ab0be2d060c35978.png

①手工录入:A、B、C列的年月日需要手工录入

②下拉菜单选择:产品和型号通过下拉菜单进行选择,这些下拉菜单的数据源正是进货记录表中的数据

00702b31c72269990cb45c5f1c22d4d5.png

③公式自动生成:进价和定价这两个字段,在进货的时候就已经确定了,他们和产品具有对应关系,所以通过公式自动进行匹配。=IFERROR(INDEX(产品清单区域,MATCH([@型号],产品清单!B:B,0),4),””)

19971ebef7e3037c72b3f0044c368985.png

03、产品清单表

这个表不需要填写内容,是自动生成的,属于过渡表,实际使用过程中,可以将其隐藏。那为什么要有这样一个表呢?

18629ea9cf76cdf34f25e12e952e7404.png

原因有几点:

①为了销售表中填写的产品信息和进货表中的一致,需要将进货表中的产品作成下拉菜单,但是进货表是一行一行的记录,存在很多重复,无法直接使用;

②还有其他信息,诸如进价、定价等,在进货表中与产品不是一对一关系,需要将其梳理成一对一关系,这样才可以使用匹配函数精确匹配。

这个表就是通过进货记录表创建数据透视表,进而实现去重、一对一关系,如图所示,是创建的其中一个产品列表。

5aa6cbfeda8ac27534a871535196a6d3.png

所以,现在你知道进货记录表中的刷新按钮的作用了吧?它是为了将新增的进货记录,刷新到数据透视中,从而生成新的产品清单。因此,没刷新一次,数据透视表的源数据会更新一次,产品清单也会变化。

那如何将这个变化的产品列表作为销售记录表中的下拉菜单呢?答案是使用动态区域函数Offset。

比如,针对型号,我们创建一个名称:

47fdf338ea552484ae8d0354c742daad.png

这个名称的引用位置为一个动态扩展的数据区域:

=OFFSET(产品清单!$J$1,MATCH(销售记录!$D2,产品清单!$J:$J,0)-1,1,COUNTIF(产品清单!$J:$J,销售记录!$D2),1)

通过这个动态区域,它总能获取数据透视表中的最新数据,因此,每一次在进货记录表中输入进货信息之后,点击刷新,菜单即可更新为最新的。

04、库存报表

这是进销存报表的核心,在这个表中,序号展示出每日的关键销售指标、每月的关键销售指标和详细的库存情况,并且这些数据都可以通过时间来进行筛选。

这个表中的除了时间数据,其他所有数据都是通过公式生成的,不需要填写。

bb2cec2bb149afed0c9704773718a48c.png

我只举一个例子:

某个产品的上月结存数量,这是一个多条件求和的公式,上月结存=上月进货-上月销售

5813a351a704577cad2c4c0be185288c.png

因此公式是这样的:

=SUMIFS(进货记录[数量],进货记录[产品],库存报表!B9,进货记录[年],库存报表!$D$2,进货记录[月],库存报表!$G$2-1) – SUMIFS(销售记录[数量],销售记录[产品],库存报表!B9,销售记录[年],库存报表!$D$2,销售记录[月],库存报表!$G$2-1)

第一个SUMIFS是求产品上个月的进货总量,第二个SUMIFS是求产品上个月的销售总量。只要你知道SUMIFS的用法,那公式的巨贪含义很容易理解,我这里就不一一解释了。

将各个字段中的公式补全,那么完整的进销存报表就完成了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/138320.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • STM32F103使用标准库移植RT-Thread标准版的Finsh

    STM32F103使用标准库移植RT-Thread标准版的Finshrtt标准版中stm32的bsp使用的是HAL库,现在想换成标准库。相比于rttnano的移植来说,和标准版的移植还是有不小的差别的,至少我个人这么认为。nano在移植过程中只需要按照#error提示修改好board.c即可。当然如果需要使用finsh的话,你还需要补充完成finsh_board.c和串口的一些信号,具体参见官方文档。整个流程还是相当清晰的,工作量也不大。移植标准版的另一个原因是我想使用ATClient。刚开始我尝试直接向nano版本中进行添加,但似乎…

    2022年5月15日
    45
  • IdentityServer4总结[通俗易懂]

    IdentityServer4总结[通俗易懂]一.客户端模式客户端模式只对客户端进行授权,不涉及到用户信息。如果API需要提供到第三方应用,第三方应用自己做用户授权,不需要用到用户资源,就可以用客户端模式,只对客户端进行授权访问api资源。1.添加客户端newClient(){ClientId=”apiClientCd”,//客户端IdClientSecrets={newSecret(“apiSecret”.Sha256())},//客户端密码AllowedGrantTypes=GrantTypes.

    2025年6月29日
    3
  • ADC采样滤波算法利用卡尔曼滤波算法详解

    ADC采样滤波算法利用卡尔曼滤波算法详解1ADC采样模型假设ADC采样的值已经为稳定状态,设k+1k+1k+1时刻ADC采样值为Xk+1Xk+1X_{k+1},则kkk时刻ADC采样值为XkXkX_k,假设k+1k+1k+1时刻的采样值为Zk+1Zk+1Z_{k+1},则有:{Xk+1=Xk,Zk+1=Xk+1+δ,δ为噪声{Xk+1=Xk,Zk+1=Xk+1+δ,δ为噪声\begin{cases}X_{k+1}=X…

    2022年6月12日
    34
  • oracle的开窗函数

    oracle的开窗函数

    2021年9月2日
    162
  • pycharm2020 激活码【中文破解版】

    (pycharm2020 激活码)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

    2022年3月28日
    60
  • 服务器磁盘配置信息,服务器磁盘阵列配置

    服务器磁盘配置信息,服务器磁盘阵列配置说到磁盘阵列(RAID,RedundantArrayofIndependentDisks),现在几乎成了网管员所必须掌握的一门技术之一,特别是中小型企业,因为磁盘阵列应用非常广泛,它是当前数据备份的主要方案之一。然而,许多网管员只是在各种媒体上看到相关的理论知识介绍,却并没有看到一些实际的磁盘阵列配置方法,所以仍只是一知半解,到自己真正配置时,却无从下手。本文要以一个具体的磁盘阵列配置方法…

    2022年6月6日
    53

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号