
我使用的是 Excel 2010。第一個工作表名為“Summary”,其餘 12 個工作表是一年中的月份(一月至十二月)。在“摘要”中,我想要求用戶選擇一個月。然後,我使用“ =DATE(YEAR(E1),MONTH(E1)+1,1)
”增加到下個月。總共完成了 2 次,因此使用者輸入06/01/2016
後會得到六月、七月和八月。現在,我想從指定的 3 個月份中提取數字,並將它們匯總到「摘要」工作表中。我遇到的問題與使用INDIRECT()
公式以及月份單元格的格式不是文字而是日期(實際上是自訂日期) 有關。
如果儲存格中的資料不是文本,我將如何在公式中引用 6 月、7 月和 8 月工作表?就像=B1!H3
我試圖訪問=July!H3
.希望這是有道理的。如果沒有,請告訴我,我可以嘗試解決它。謝謝!
答案1
這是一種解決方案:
假設使用者在 中輸入日期E1
。
F1
包含=DATE(YEAR(E1),MONTH(E1)+1,1)
G1
包含=DATE(YEAR(F1),MONTH(F1)+1,1)
H1
包含=DATE(YEAR(G1),MONTH(G1)+1,1)
(我縮短了下一部分的月份名稱)
您可以使用CHOOSE
函數提供一個選項清單 - 將根據第一個參數指定的數字選擇其中一個。舉個例子,假設您想A1
從指定工作表之一取得 的值:
F2
包含=CHOOSE(MONTH(F1), Jan!$A$1, Feb!$A$1, Mar!$A$1, Apr!$A$1, May!$A$1, Jun!$A$1, Jul!$A$1, Aug!$A$1, Sep!$A$1, Oct!$A$1, Nov!$A$1, Dec!$A$1)
G2
包含=CHOOSE(MONTH(G1), Jan!$A$1, Feb!$A$1, Mar!$A$1, Apr!$A$1, May!$A$1, Jun!$A$1, Jul!$A$1, Aug!$A$1, Sep!$A$1, Oct!$A$1, Nov!$A$1, Dec!$A$1)
H2
包含=CHOOSE(MONTH(H1), Jan!$A$1, Feb!$A$1, Mar!$A$1, Apr!$A$1, May!$A$1, Jun!$A$1, Jul!$A$1, Aug!$A$1, Sep!$A$1, Oct!$A$1, Nov!$A$1, Dec!$A$1)
我們會說如果你想要總和I2
就簡單做
=SUM(F2:H2)
或者,如果您不想顯示每個月的數字,您可以編寫一個巨大的函數:
=SUM(CHOOSE(MONTH(F1), Jan!$A$1, Feb!$A$1, Mar!$A$1, Apr!$A$1, May!$A$1, Jun!$A$1, Jul!$A$1, Aug!$A$1, Sep!$A$1, Oct!$A$1, Nov!$A$1, Dec!$A$1), CHOOSE(MONTH(G1), Jan!$A$1, Feb!$A$1, Mar!$A$1, Apr!$A$1, May!$A$1, Jun!$A$1, Jul!$A$1, Aug!$A$1, Sep!$A$1, Oct!$A$1, Nov!$A$1, Dec!$A$1), CHOOSE(MONTH(H1), Jan!$A$1, Feb!$A$1, Mar!$A$1, Apr!$A$1, May!$A$1, Jun!$A$1, Jul!$A$1, Aug!$A$1, Sep!$A$1, Oct!$A$1, Nov!$A$1, Dec!$A$1))
(絕對引用可選)