在 SUM ' Between:sheets' 公式中取得 Excel 工作表名稱

在 SUM ' Between:sheets' 公式中取得 Excel 工作表名稱

我有一系列具有不同名稱的表格,例如

start, wc 17 Oct,  wc 24 Oct, wc 31 Oct

為了保持每張紙中各種數字的運行總數,我只需在每張紙中使用以下內容,

=SUM('start:wc 24 Oct'!B1)

那麼下一張紙是,

=SUM('start:wc 31 Oct'!B1)

等等等等。我知道你可以透過以下方式取得目前工作表名稱=MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,255)

但是有沒有辦法將兩者結合起來

=SUM("'start:"&MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,255)&'!B1)

如果可能的話,使上述工作正確的語法是什麼?

我嘗試過使用INDIRECT

=SUM(INDIRECT("'start:"&MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,255)&"'!B1", TRUE))

然而,這不斷拋出#REF!錯誤。

答案1

一種方法是將所有工作表的清單新增到start工作表中。

這可以透過新增命名範圍動態完成。在名稱管理員中使用下列公式:

=GET.WORKBOOK(1)

並為其命名(我用過test

在此輸入影像描述

然後在 Start!A1 中輸入:

=IFERROR(MID(INDEX(test,ROW(1:1)),FIND("]",INDEX(test,ROW(1:1)))+1,999),"")

並向下拖曳/複製。這將按照選項卡中顯示的順序建立工作表清單。

然後在所需的儲存格中使用此公式進行求和:

=SUMPRODUCT(SUMIF(INDIRECT("'" & INDEX('start'!A:A,MATCH("start",'start'!A:A,0)):INDEX('start'!A:A,MATCH(MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,255),'start'!A:A,0)) & "'!B1"),"<>0"))

相關內容