进销存表公式设置的关键,在于让进货、销售、库存三个环节的数据自动联动。通过合理设计“采购入库表、销售出库表、库存汇总表”等核心表格,并使用如 SUMIFS 、 VLOOKUP/XLOOKUP 、 IFERROR 、动态区域等公式,可以让库存数量、库存金额、毛利、周转率等指标自动计算,减少人工统计错误并大幅提升效率。采用结构化的字段命名、统一编码规则,再配合进销存系统或在线表格工具,可以在几小时内搭建一套适用于中小企业的进销存管理模型。后期只需维护商品和客户资料,录入采购和销售单据,其他复杂的进销存公式自动完成计算与汇总,帮助企业快速掌握库存变化和资金占用情况。
🧩 一、进销存表与公式设计的整体思路
在讲具体的 Excel/表格公式之前,要先理清“进销存管理”的数据逻辑,否则再复杂的公式也难以维护。
1. 进销存表的核心目标
进销存表的公式设置,主要为解决以下问题:
- 库存数量自动更新 :随采购入库、销售出库动态变化
- 库存金额和成本自动计算 :包括移动加权成本、期末库存金额等
- 销售毛利、毛利率自动统计
- 采购/销售汇总与分类统计 :按商品、供应商、客户、日期等维度
- 预警与决策支持 :库存上下限预警、畅销/滞销品分析
核心关键词: 进销存表、库存公式、自动统计、成本计算、毛利分析。
2. 常见的进销存数据结构
在实际企业中,建议将进销存表拆分为以下几张主表与辅助表,以方便公式引用和维护:
| 表名 | 主要用途 | 核心字段示例 |
|---|---|---|
| 商品档案表 | 维护商品基础信息 | 商品编码、商品名称、规格型号、条码、单位、默认进价、默认售价、分类等 |
| 供应商档案表 | 维护供应商信息 | 供应商编码、供应商名称、联系人、电话、结算方式等 |
| 客户档案表 | 维护客户信息 | 客户编码、客户名称、类型、地区、结算方式等 |
| 采购入库表 | 记录所有采购与退货数据 | 日期、单号、供应商、商品编码、数量、单价、金额、类型(采购/退货)等 |
| 销售出库表 | 记录所有销售与退货数据 | 日期、单号、客户、商品编码、数量、单价、金额、类型(销售/退货)等 |
| 期初库存表 | 记录某个期初日期时的库存数量和成本 | 商品编码、仓库、期初数量、期初成本单价、期初金额 |
| 库存收发汇总表 | 按商品汇总采购、销售、结存,做库存与成本表 | 商品编码、期初数量、期初金额、本期入库、本期出库、期末数量、期末金额等 |
核心设计思路:
- 所有 单据表(采购入库表、销售出库表)只负责记录事实数据 ,不在行内做太复杂的逻辑;
- 所有 统计与分析逻辑集中到“库存收发汇总表”或报表中 ,通过公式汇总;
- 通过统一的 商品编码、供应商编码、客户编码 ,用 VLOOKUP / XLOOKUP / INDEX+MATCH 等公式完成表与表之间的关联。
3. 进销存公式设计原则
在具体设置公式时,建议遵循以下原则:
1. 单一来源原则 :同一类数据只在一张表维护,其他表用公式引用,避免信息冲突。
2. 字段规范化 :字段名称统一,如“商品编码”/“ProductCode”,避免同义不同名。
3. 编码唯一性 :商品编码、供应商编码等要全表唯一,方便查找和引用。
4. 公式结构统一 :类似的统计逻辑尽量使用同一类型公式,如全部用 SUMIFS 。
5. 避免手工重复计算 :尽可能用公式自动完成库存数量、金额、成本、毛利等关键指标。
6. 考虑扩展性 :用表格(Excel 表格功能 / 在线表格)+结构化引用,让新增数据自动纳入公式范围。
📦 二、进销存核心表结构与必备字段设计
要快速搞定进销存公式,先要把几张核心表结构搭好。下面以典型的中小企业使用 Excel 或在线表格为例,说明各表应包含哪些字段。
1. 商品档案表字段设计与公式应用
用途:集中管理所有商品的信息,是进销存公式引用的基础。
建议字段:
| 字段名称 | 说明 | 示例 |
|---|---|---|
| 商品编码 | 商品唯一编码(手动或系统) | P0001 |
| 条码 | 条形码(选填) | 692XXXXX |
| 商品名称 | 商品全名 | 蓝牙耳机 |
| 规格型号 | 規格/型号 | 4.2 蓝牙版本 |
| 单位 | 计量单位 | 件、盒、包 |
| 商品分类 | 品类分类 | 数码配件 |
| 默认进价 | 常用采购价格 | 80 |
| 默认售价 | 常规销售价格 | 129 |
| 启用状态 | 是否在用 | 启用/停用 |
常用公式:
- 在其他表(如采购表)中,根据商品编码自动带出商品名称、规格等:
=IFERROR(VLOOKUP([@商品编码], 商品档案表!$A:$H, 2, FALSE), "")
这类 VLOOKUP/XLOOKUP 公式是进销存表中最常用的 主数据拉取公式 。
2. 采购入库表字段设计
用途:记录每一笔采购或采购退货,作为后续库存和成本计算的基础。
建议字段:
| 字段名称 | 说明 | 示例 |
|---|---|---|
| 日期 | 采购或退货日期 | 2026-05-18 |
| 单号 | 单据编号(可自动生成) | CG20260518001 |
| 类型 | 采购入库 / 采购退货 | 采购入库 |
| 供应商编码 | 供应商唯一标识 | S0001 |
| 供应商名称 | 用公式从供应商档案表带出 | |
| 商品编码 | 商品唯一编码 | P0001 |
| 商品名称 | 用 VLOOKUP 从商品档案表带出 | |
| 仓库 | 仓库名称/编码 | 总仓/华南仓等 |
| 数量 | 本次采购数量(退货为负或用类型区分) | 100 |
| 含税单价 | 单价 | 80 |
| 金额 | 数量 × 单价 | 公式计算 |
| 税率 | 如需做税额统计 | 13% |
| 备注 | 选填 |
关键公式示例:
- 金额自动计算:
=[@数量] * [@含税单价]
3. 销售出库表字段设计
用途:记录每一笔销售或销售退货,是库存减少和销售收入、毛利计算的基础。
建议字段:
| 字段名称 | 说明 | 示例 |
|---|---|---|
| 日期 | 销售/退货日期 | 2026-05-20 |
| 单号 | 销售单号 | XS20260520001 |
| 类型 | 销售出库 / 销售退货 | 销售出库 |
| 客户编码 | 客户唯一标识 | C0001 |
| 客户名称 | 用公式从客户档案表带出 | |
| 商品编码 | 商品唯一编码 | P0001 |
| 商品名称 | 从商品档案表带出 | |
| 仓库 | 对应出货仓 | 总仓 |
| 数量 | 销售数量(退货为负或区分类型) | 50 |
| 含税单价 | 销售单价 | 129 |
| 金额 | 数量 × 单价 | 公式计算 |
| 备注 | 选填 |
关键公式:
- 金额自动计算:
=[@数量] * [@含税单价]
4. 期初库存表字段设计
用途:在切换到新系统或新表格时,记录当期开始时已有的库存数量和成本。
建议字段:
| 字段名称 | 说明 |
|---|---|
| 商品编码 | |
| 仓库 | |
| 期初数量 | |
| 期初成本单价 | 可以录入历史加权价 |
| 期初金额 | 期初数量 × 单价 |
关键公式:
- 如果只录入期初数量和成本单价,则期初金额可以自动计算:
=[@期初数量] * [@期初成本单价]
在进销存表中,可用于:
- 统计某商品的总入库数量
- 统计某商品、某仓库的出库数量
- 统计某日期区间的销售金额等
2. 库存收发汇总表的关键字段与公式
库存收发汇总表字段设计:
| 字段 | 说明 |
|---|---|
| 商品编码 | 从商品档案表中获取/列表 |
| 商品名称 | 用公式带出 |
| 仓库 | 如需按仓库管理库存可加入此字段 |
| 期初数量 | 来自期初库存表 |
| 期初金额 | 来自期初库存表 |
| 本期入库数量 | 从采购入库表统计(含采购退货处理方式) |
| 本期入库金额 | 同上 |
| 本期出库数量 | 从销售出库表统计(含销售退货处理方式) |
| 本期出库金额 | 同上 |
| 期末结存数量 | 期初 + 入库 - 出库 |
| 期末结存金额 | 可按移动加权价或其他方法计算 |
| 移动加权成本单价 | 期末金额 ÷ 期末数量(非必需) |
下面是重点: 进销存公式设计示例 。
(1)期初数量/金额引用公式
假设库存收发汇总表中 A列=商品编码 ,期初库存表中也有 商品编码 、 期初数量 、 期初金额 :
- 期初数量(在库存收发汇总表中):
=IFERROR(VLOOKUP($A2, 期初库存表!$A:$D, 3, FALSE), 0)
如果还要区分仓库,则需将 商品编码+仓库 作为联合键,可通过辅助列或 SUMIFS 汇总实现。
(2)本期入库数量与金额(使用 SUMIFS)
假设:
- 采购入库表中
- 商品编码 在 D 列
- 数量 在 H 列
- 含税金额 在 J 列
- 类型 在 C 列(采购入库/采购退货)
- 库存收发汇总表中
- 商品编码 在 A 列
本期入库数量:
如采购退货在表里作为负数数量记录,那么可不区分类型,直接:
本期入库金额:
(3)本期出库数量与金额
同理,假设销售出库表内:
- 商品编码:E 列
- 数量:H 列
- 金额:J 列
- 类型:C 列(销售出库/销售退货)
本期出库数量:
如果销售退货为负数可直接汇总。
本期出库金额:
(4)期末结存数量与金额
期末结存数量:
期末结存金额 (若采用移动加权成本,简单版):
假设本期入库金额也按照实际采购金额计算,则可:
如果不做逐笔加权,而只按期末整体计算,则一个近似做法:
在库存收发汇总表中可以用公式实现,例如:
- 本期可供出售数量(可用辅助列):
=[@期初数量] + [@本期入库数量]
- 移动加权成本单价:
=IF([@本期可供出售数量]=0, 0, [@本期可供出售金额]/[@本期可供出售数量])
- 期末结存金额:
=[@期末结存数量] * [@移动加权成本单价]
单位:
默认进价带入单价(可以给操作员参考或直接使用):
录单时,可以允许用户覆盖默认进价,以记录真实采购价格。
2. 用 XLOOKUP 替代 VLOOKUP(更灵活)
如果你使用的是 Office 365 / 2021 及更新版本,更推荐用 XLOOKUP ,好处是:
- 不需要指定列序号
- 支持左查找
- 可直接指定“找不到时返回值”
示例(采购表中自动带出商品名称):
同理,可带出单位、默认进价等。
3. INDEX + MATCH 在复杂进销存表中的应用
当你的进销存表过于复杂,需要按多个条件查找(例如按商品编码 + 仓库查找库存),可以使用 INDEX + MATCH(MATCH) 的形式组合。
假设有一张“多仓库存表”,结构���下:
- 第一列:商品编码
- 第一行(从第2列起):各仓库名称(总仓、华南仓、华北仓…)
- 表格中是库存数量
要在“出库录入表”中,输入商品编码和仓库后,查找当前库存数量,可使用以下公式:
其中:
- 出库表!A2 :商品编码
- 出库表!B2 :仓库名称
这类公式在多维进销存管理(多仓、多店)中非常常见。
📐 五、进销存常见计算:毛利、毛利率、周转率等公式
进销存管理不仅要关注库存数量,还要关注 盈利能力和周转效率 。下面是几类常见指标及其公式。
1. 销售毛利与毛利率
毛利 = 销售收入 - 销售成本 毛利率 = 毛利 ÷ 销售收入
在实际进销存表中,可以在 销售出库表 中增加字段:
| 字段 | 说明 |
|---|---|
| 成本单价 | 从库存成本或商品档案带出 |
| 成本金额 | 数量 × 成本单价 |
| 毛利 | 销售金额 - 成本金额 |
| 毛利率 | 毛利 ÷ 销售金额 |
示例公式:
- 成本金额:
=[@数量] * [@成本单价]
- 毛利率:
=IF([@金额]=0, 0, [@毛利]/[@金额])
库存周转天数:
在进销存表中,一般要先在“库存收发汇总表”或“财务统计表”中求出:
- 期间销售成本总额(可由销售出库表的成本金额汇总得到)
- 期初库存金额
- 期末库存金额
- 平均库存金额 = (期初库存金额 + 期末库存金额) ÷ 2
然后使用简单公式计算:
- 库存周转率:
=IF(平均库存金额=0, 0, 销售成本总额/平均库存金额)
3. 安全库存与库存预警公式
为防止缺货或积压,常用方法是在商品档案表中为每个商品设置:
| 字段 | 说明 |
|---|---|
| 安全库存量 | 建议最低库存数量 |
| 最高库存量 | 建议最高库存数量 |
在库存收发汇总表中,增加:
- 库存预警状态(文本值:正常/缺货预警/积压预警)
库存预警公式示例:
假设:
- 期末结存数量在列 J
- 安全库存量、最高库存量通过 VLOOKUP 从商品档案表查到在 K 、 L 列
则:
这类进销存预警公式,有助于快速判断哪些商品需要补货、哪些商品需要促销或减少采购。
🧮 六、进销存公式的实战技巧与常见坑
公式写得再多,如果不好维护、容易出错,就难以长期使用。下面总结一些常见技巧与问题。
1. 使用表格(结构化引用)让公式自动扩展
在 Excel 中,将数据区域转换为“表格”(Ctrl+T),会有这些好处:
- 新增行时,公式自动向下填充
- 使用 [字段名] 进行结构化引用,公式更易读
- 用于 SUMIFS 时,可直接引用表格列
例如,在采购入库表中金额列公式:
比起传统的 =H2*I2 更不容易混乱。
在线表格(如 Google Sheets 或一些国产在线表格工具)也通常提供类似能力。
2. 用 IFERROR 包裹查找类公式,防止大量错误值
在进销存表中大量使用 VLOOKUP/XLOOKUP 等,往往会遇到找不到编码时的 #N/A 错误。建议统一用 IFERROR 做错误处理:
或
根据场景不同,空字符串 "" 或 0 各有用途:
- 无法查到商品名称时,返回 "" 更合适;
- 统计数量/金额时,返回 0 更合适。
3. 正确使用绝对引用与相对引用
在进销存公式中,尤其是 SUMIFS 、 VLOOKUP 中的区域引用,应使用绝对引用 $A:$A 或 $A$2:$A$1000 ,防止下拉复制时范围被移动。
示例:
不要写成:
虽然在某些情况下也能用,但容易在复制到其他位置时发生意外。
4. 避免在数据源表中使用合计行干扰公式
进销存管理中,为了方便查看,有些用户习惯在数据底部插入“合计”行,并在其中填数字,这可能会影响后续 SUMIFS 统计结果。
建议做法:
- 数据源表保持纯记录,不加合计行;
- 将合计放在单独区域或使用数据透视表;
- 或将合计行标记“类型=合计”,在公式中排除。
5. 用命名区域或名称管理器简化复杂公式
当进销存表格规模逐渐扩大时,公式里的引用可能变得冗长。可以在 Excel 中通过“名称管理器”给数据区域命名,如:
- 商品表 = 商品档案表!$A:$H
- 采购表 = 采购入库表!$A:$K
然后在公式中直接写:
在某些在线表格中,也支持为区域定义名称,用法类似,有利于提高进销存公式的可读性。
🧠 七、用进销存系统模板快速替代大量手工公式(含推荐)
当商品规模、单据数量、仓库数量上升后,仅靠 Excel 或云表格 + 手工公式会遇到一些问题:
- 公式容易被误删、被覆盖;
- 大量 SUMIFS 、 VLOOKUP 导致表格性能下降;
- 多人协同录入时,版本控制困难;
- 成本核算(尤其是移动加权、分仓成本)公式复杂,维护成本高。
这时,可以考虑采用 低门槛的在线进销存系统或模板 ,把复杂的公式逻辑交给系统处理,自己只关注业务数据与报表查看。
在进销存场景中,很多企业会使用 SaaS 型产品或低代码工具来搭建“进销存系统模板”,例如:
- 商品档案、供应商、客户统一管理
- 采购、销售、库存自动联动,系统后台计算库存数量、成本、毛利
- 支持多仓、多店、批次管理等高级功能
- 支持导出 Excel 或直接在系统内做统计分析
如果你希望:
- 仍然保持“像表格一样可视化编辑”的体验;
- 又希望减少手工设置复杂公式;
- 同时具备“采购、销售、库存、报表”的整体能力;
可以考虑使用一些支持“进销存模板”的在线工具。例如有的工具提供的 进销存模板 ,可以直接在浏览器中使用,支持自定义字段和逻辑,适合中小企业快速搭建自己的进销存系统。
在这类工具中,如 轻流平台进销存 ( https://s.qingflow.com/8bn69 ; )这类模板化方案,通常已经内置了:
- 采购入库、销售出库、库存查询等模块;
- 自动计算库存数量与金额的逻辑;
- 可视化表单与报表;
- 灵活的字段、流程自定义能力。
你可以在此基础上继续扩展:例如增加“安全库存、预警提醒、审批流程”等,而不必自己写复杂的进销存公式。
🧩 八、典型场景:从 0 搭建一套可用的进销存公式模型(步骤梳理)
如果你希望在一天内快速搭建一套可用的进销存表 + 公式,下面是一个简化版的实施步骤。
步骤 1:整理商品、供应商、客户基础数据
1. 创建“商品档案表”,列出全部商品:
- 商品编码(自定义编码规则,如品类+序号)
- 商品名称、规格、单位
- 默认进价、默认售价
1. 创建“供应商档案表”:
- 供应商编码、名称、联系方式
1. 创建“客户档案表”:
这些基础表中的内容,是之后一切进销存公式的基础,尽量一次整理完整,后续再渐进式补充。
步骤 2:搭建采购入库表与销售出库表结构
- 按前文推荐字段设计(日期、单号、类型、编码、名称、数量、价格、金额等);
- 在商品编码列上配置数据有效性(下拉选择商品编码),避免手工输入错误;
- 使用 VLOOKUP/XLOOKUP 自动带出商品名称、单位、默认价格;
- 设置金额为“数量 × 单价”的公式。
此时两张表已经可以用于录入采购、销售数据。
步骤 3:录入期初库存表(如果有历史库存)
- 导入当前实际库存:商品编码、仓库、期初数量、期初成本单价;
- 通过公式计算期初金额。
这一步完成后,进销存模型就有了一个明确的“起点”。
步骤 4:建立库存收发汇总表
1. 将所有商品编码(可按商品档案表的编码列)复制到库存收发汇总表中;
2. 用 VLOOKUP 带出商品名称、单位等;
3. 用 VLOOKUP 关联期初库存表,获取期初数量与金额;
4. 用 SUMIFS 从采购入库表汇总本期入库数量、金额;
5. 用 SUMIFS 从销售出库表汇总本期出库数量、金额;
6. 根据公式计算期末结存数量、金额、移动加权成本单价等;
7. 如有需要,计算毛利、毛利率、库存周转天数。
一般到这一步,已经构成了一个完整的“进销存核心公式模型”。
步骤 5:增加库存预警和分析报表
- 在商品档案表中增加安全库存、最高库存字段;
- 在库存收发汇总表中用公式判断预警状态;
- 如有需要,使用数据透视表或在线表格“数据透视分析”功能,生成按品类、按客户、按供应商的采购/销售分析报表。
如果感觉 Excel / 通用表格的管理成本逐渐增加,可以把这些结构迁移到在线进销存系统或低代码平台中,进一步利用系统的流程、权限、接口能力。
在这方面,类似 轻流平台进销存 这种可自定义的模板工具,会比传统纯表格模式更便于长期维护与团队协作,你仍然可以用表单和报表的方式查看数据,但不必亲自维护所有底层进销存公式。
🔍 九、进销存公式与多仓、多店、多币种等高级场景
当企业规模继续扩大,进销存公式的复杂度还会显著提升,常见场景包括:
1. 多仓库、多店铺库存管理
- 每一条采购、销售记录都需要记录所属仓库/店铺;
- 库存汇总既要支持“按商品总库存”,也要支持“按商品 + 仓库”分仓库存;
- 转仓(仓库间调拨)也要计入库存收发。
在公式层面,会出现更多维度的 SUMIFS :
同时,为避免复杂的 INDEX + MATCH 嵌套,可考虑:
- 使用透视表做“多维汇总”;
- 或使用专门支持多仓、多店管理的进销存系统。
2. 批次管理与效期管理
在食品、药品、化妆品等行业,经常需要按批次和有效期管理库存。这意味着:
- 采购入库时要记录“批次号、生产日期、有效期”;
- 销售出库时要指定或自动匹配批次(如先进先出策略);
- 库存汇总表不仅要统计商品总库存,还要按批次展示剩余数量与效期。
用纯 Excel / 普通表格做,会出现:
- 公式中增加批次号条件
- 复杂的匹配逻辑(如按日期排序自动出库)
在这类场景下,更推荐通过进销存系统来处理,系统内会通过后台逻辑实现自动批次分配,而不是完全依赖前端进销存公式。
3. 多币种、多税率、含税/未税价格折算
跨境贸易或海外购业务中,进销存表需要处理:
- 不同币种的采购(USD、EUR等),需要换算成人民币/本位币;
- 不同税率(13%、9%、0等);
- 含税价与未税价的互相换算公式。
常见公式示例:
- 未税单价 = 含税单价 ÷ (1 + 税率)
- 含税金额 = 数量 × 含税单价
- 未税金额 = 数量 × 未税单价
在表格中通过新增字段和简单公式即可实现,但汇总时需要决定使用何种金额口径(含税或未税)。
🚀 十、总结与未来趋势:进销存公式自动化与系统化方向
在传统 Excel 或通用表格中,通过合理设计 商品档案表、采购入库表、销售出库表、期初库存表与库存收发汇总表 ,并配合 SUMIFS 、 VLOOKUP/XLOOKUP 、 IFERROR 以及简单的加权成本和预警公式,完全可以搭建一套适用于中小企业的进销存管理方案。
核心要点回顾:
- 使用统一编码体系(商品编码、供应商编码、客户编码),确保查找类公式稳定;
- 坚持“单据表记录事实、汇总表做统计”的架构,便于进销存公式集中管理;
- 灵活运用 SUMIFS 做多条件汇总,运用 VLOOKUP/XLOOKUP 做主数据关联;
- 在库存收发汇总表中完成期初、入库、出库、期末结存数量与金额以及移动加权成本的计算;
- 进一步扩展毛利、毛利率、周转率、库存预警等指标,提升库存管理决策能力。
未来趋势与建议:
- 随着业务复杂度提升(多仓、多店、批次、多币种、多维分析),单纯依赖 Excel/表格公式的成本会快速上升;
- 越来越多企业开始使用线上进销存系统或低代码平台,既保留“表格式录入”的灵活性,又减少手工维护复杂公式的负担;
- 一些模板化的进销存产品,已经将常见进销存公式和逻辑封装好,用户只需做字段与流程的轻量定制。
如果你希望在实践中进一步降低搭建难度,可以直接使用现成的进销存模板系统,例如我们在实际项目中会使用像 轻流平台进销存 这样的模板方案(链接: https://s.qingflow.com/8bn69 ; ),在已有模板的基础上调整字段、流程,就可以快速上线一套适用的进销存管理工具,而不必从零开始维护大量复杂公式。
最后,按你的需求附上这句话: 分享一个我们公司在用的进销存系统模板,需要的可以自取,可直接使用,也可以自定义编辑修改: https://s.qingflow.com/8bn69
如果企业希望把文章中的进销存方法真正落到日常执行,轻流可通过可视化表单承接采购、入库、出库、调拨和盘点,再结合流程审批、库存数据关联、权限管理、自动提醒与数据看板,把业务对象、流程节点和经营数据串起来,并按实际变化持续调整;可了解轻流,从一个真实场景开始试点。
