Excel中多位置库存全0时的递增标记公式求解
问题描述
现有三个位置(Loc1、Loc2、Loc3)的库存值,取值仅为0或1。需求如下:
- 当三个位置库存均为0时,在“Get it here”列标记递增数字(如1、2、3…)
- 若任一位置库存为1,则该列留空
曾尝试公式 =IF(SUM(A1-A3)>1, increment?, ) 但无法实现,寻求正确公式方案。
解决方案
适用Excel的公式方案
假设库存数据在A、B、C列,“Get it here”列为D列,从第1行开始:
- 在D1单元格输入公式:
=IF(SUM(A1:C1)=0,1,"") - 在D2单元格输入公式:
=IF(SUM(A2:C2)=0,MAX($D$1:D1)+1,"") - 选中D2单元格,下拉填充至所有需要计算的行
公式说明
SUM(A1:C1)=0:判断当前行三个库存是否全为0(三个0的和为0,只要有一个1,和就≥1)MAX($D$1:D1)+1:若符合全0条件,取上方已标记的递增数字的最大值加1,实现连续计数- 不符合条件时返回空文本
"",实现留空效果
更简洁的通用写法
也可以把两行公式合并成一个,直接在D1输入后下拉:=IF(SUM(A1:C1)=0,COUNTA($D$1:D0)+1,"")
(注:$D$1:D0是引用当前行上方的空区域,COUNTA结果为0,首次符合条件时返回1,后续自动累加)
内容的提问来源于stack exchange,提问作者Glen Newell
相关产品推荐
相关产品推荐

