理論上,這可以使用兩個概念:數組公式和INDIRECT函數。一個假設的公式可能是這個樣子:
=SUM(INDIRECT("Sheet"&{1,2,3,4,5}&"!A1"))
在這個例子中,間接功能是用來輸入每個工作表名稱(假設你有工作表Sheet1,Sheet2中,工作表Sheet 3等),並從所有的回暖A1那些命名錶。然而,間接函數不允許使用這種方式數組公式,沒有一個額外的步驟(見@ XORLX的評論下面):
=SUM(N(INDIRECT("Sheet"&{1,2,3,4,5}&"!A1")))
由於紙張號這裏是硬編碼{1,2, 3,4,5},你可以像輸入其他的那樣輸入這個公式 - 這樣,它就不是一個完整的「數組公式」。
另一種方法:
最簡單的方法將是給每片在摘要標籤欄,然後添加所有這些一起。你可以通過編程來完成這個任務,所以它不像你想象的那麼痛苦(雖然它會佔用很多空間)。
假設Sheet1是空白的,沿着第1行從B列開始,你有每個標籤的名字(我無法完全說明你的問題,但讓我們假設類似「2010; 2011; 2012 ... 「等等。從列2開始,在第2行開始,你有你想要添加的月份,我還假設每個月份都沿着每個標籤的A列設置,而且你的結果是在那個月。每個選項卡的塔B放在一起,在式B2和拖累/右將是:
=VLOOKUP($A2,INDIRECT("'"&B$1&"'!A:B"),2,0)
這將拾取從A列中的月份的名稱,並檢查它拉其片從使用INDIRECT函數,一旦它有表單名稱,它就會添加「A:B」,這意味着它會被搜索ch列A使用VLOOKUP。它給你來自第二列(B列)的值,並且需要精確匹配來給出值。
你能澄清你的命名約定是如何設置的? MONTH是每個標籤的前綴嗎?它提到了什麼? –
我相信月是功能。 '= SUMPRODUCT( - (MONTH(Sheet1!A2:A11)= 1),Sheet1!B2:B11)'適用於我,只要A1至A11有適當的日期。你的功能包括''!這使得它看起來像你正在輸入一個你不能擁有的空白表名。另外,excel並不能真正處理所有工作表中的公式,因此您可能更適合使用匯總表並單獨對每個工作表進行計算並對結果進行彙總。 – gtwebb
你說「SUM和月份和年份的所有值」,雖然我看不到任何企圖在公式中引用任何一年的參考? –