使用空白连续编号 - 多个工作表

时间:2015-01-19 16:58:36

标签: excel excel-formula

在Sheet1中,我有50个单元格用于编号(B列),我的公式是 =IF(ISTEXT(C9),B8+1,"")

如果C列中没有文字,总会有50行,有些可能会保持空白。

我想继续编写Sheet3,一直到sheet20。因此,如果Sheet1实际上以10号结尾,我希望sheet3继续编号为11,如果表3结束于20号,我希望sheet4继续编号为21,等等。

我尝试过多个公式,但因为有空白而遇到困难。非常感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

一种方法是将:=IF(ISTEXT(C4),COUNT(Sheet1!B4:B13)+1,"")放在Sheet2的第一个单元格中,然后在下面的所有单元格中重复使用=IF(ISTEXT(C5),B4+1,"")

如果您希望所有单元格具有相同的公式,则可以将COUNT移动到第一个数据上方的隐藏行。

然后你用下一张纸做同样的事情,只是更改命名。

答案 1 :(得分:0)

使用“MAX”获取更高的数字,并使用“INDIRECT”查看最后一张。因此,假设您在工作表上使用默认名称,请首先获取当前工作表名称:

A1=REPLACE(CELL("filename"),1,FIND("]",CELL("filename")),"")

然后得到表#。

A2=RIGHT(A1,LEN(A1)-5)*1

乘以1可得到数字而不是文本。现在我们可以获得之前的工作表名称:

A3="Sheet"&A2-1

现在使用Indirect获取上一张表中C列的最高值:

A4=MAX(INDIRECT(A3&"!C:C"))

如果我们合并它,我们得到:

=MAX(INDIRECT("Sheet"&RIGHT(REPLACE(CELL("filename"),1,FIND("]",CELL("filename")),""),LEN(REPLACE(CELL("filename"),1,FIND("]",CELL("filename")),""))-5)*1-1&"!C:C"))

只要你的数据在第2行开始(即你有标题),这里也是完整的公式:

=IF(ISTEXT(C2),IF(OR(ROW()=2,IF(ROW()=2,TRUE,MAX(INDIRECT("B2:B"&ROW()-1))=0)),MAX(INDIRECT("Sheet"&RIGHT(REPLACE(CELL("filename"),1,FIND("]",CELL("filename")),""),LEN(REPLACE(CELL("filename"),1,FIND("]",CELL("filename")),""))-5)*1-1&"!C:C"))+1,MAX(INDIRECT("B2:B"&ROW()-1))+1),"")