跳过序列中的某些数字
Skipping certain numbers in a sequence
在 Excel 2010 年,我有一个我想保留的以前使用过的序列号列表,我需要创建一个以我提供的数字开头的公式,但绕过我保留列表中的那些。序列号和保留列表号都可以是几千个条目。我保留的序号是:
如果我给序列的起始编号是 150,我希望按如下方式分配序列号:
其中序列跳过数字 156
和 231
。
我看到了一种创建自定义列表的方法,但这恰恰相反。
我怎样才能做到这一点?
假设您跳过的数字本身不是连续的,则此公式有效:
=IF(COUNTIF(H2:H4,K2+1)>0,K2+2,K2+1)
这假设您的起始编号在 K2 中,并且您要避免的范围是 H2:H4。
在单元格 M2 中输入此公式:
=MAX(start,M1)+1+(IFERROR(MATCH(MAX(start,M1)+1,rsv,),0)>0)
并向下复制
start
是具有起始编号的单元格(在您的示例中为 K2)。
rsv
为预留号码列表
.
更新
这是另一个解决连续保留数字问题的公式:
=INDEX(ROW(OFFSET($A,start-1,,999)),MATCH(1,ISERROR(MATCH(ROW(OFFSET($A,start-1,,999)),rsv,))*(ROW(OFFSET($A,start-1,,999))>MAX(M1,start)),))
This is an array formula and must be confirmed with Ctrl+Shift+Enter.
在 Excel 2010 年,我有一个我想保留的以前使用过的序列号列表,我需要创建一个以我提供的数字开头的公式,但绕过我保留列表中的那些。序列号和保留列表号都可以是几千个条目。我保留的序号是:
如果我给序列的起始编号是 150,我希望按如下方式分配序列号:
其中序列跳过数字 156
和 231
。
我看到了一种创建自定义列表的方法,但这恰恰相反。
我怎样才能做到这一点?
假设您跳过的数字本身不是连续的,则此公式有效:
=IF(COUNTIF(H2:H4,K2+1)>0,K2+2,K2+1)
这假设您的起始编号在 K2 中,并且您要避免的范围是 H2:H4。
在单元格 M2 中输入此公式:
=MAX(start,M1)+1+(IFERROR(MATCH(MAX(start,M1)+1,rsv,),0)>0)
并向下复制
start
是具有起始编号的单元格(在您的示例中为 K2)。
rsv
为预留号码列表
.
更新
这是另一个解决连续保留数字问题的公式:
=INDEX(ROW(OFFSET($A,start-1,,999)),MATCH(1,ISERROR(MATCH(ROW(OFFSET($A,start-1,,999)),rsv,))*(ROW(OFFSET($A,start-1,,999))>MAX(M1,start)),))
This is an array formula and must be confirmed with Ctrl+Shift+Enter.