我有一個依賴兩個不同輸入的公式:第一個是 0 到 5 之間的整數值,第二個是數組中值的捨入總和。我想讓使用者輸入這兩個值,然後用公式確定所需的輸出。問題是現在我對第一個變數有 6 種組合,每種組合都會導致第二個變數的使用方式改變。因此,我需要大量 IF 語句才能使其正常運作。
我在其他地方設定了表格,每個表格對應 0 到 5,以確定正確的值。我的問題是,有沒有辦法讓 Excel 執行以下操作?
檢查 0 到 5 是否已放入儲存格中
A2
。轉到包含該數字的工作表。
INDEX(...,MATCH())
根據數組中放置的值的數量以及值的內容從該表中的表中獲取。
我想知道完全避免使用表格並嘗試直接計算是否更有意義,但我看不到一種方法可以做到這一點,而不會導致大量嵌套IF
。如果這裡有任何不清楚的地方,請告訴我,我會盡力解釋。
答案1
如果我理解正確,您需要建立一個公式,對不同工作表中的表執行索引/匹配操作,使用者在其中選擇應搜尋哪個工作表
聽起來您可能想要使用 CHOOSE 和 INDIRECT 根據 A2 中放置的值動態建立對應工作表的路徑。
例如,下面的程式碼將使用 B2 中找到的值與對應工作表上 A1:A3 中的儲存格執行“匹配”,其中工作表基於使用者在 A2 中輸入的值 (1,2,3)
=MATCH(A2,(INDIRECT(CHOOSE(B2,"Sheet1","Sheet2","Sheet3") & "!" & "A1:A3")),0)
這裡使用 CHOOSE 來觀察儲存格 (A2),並根據輸入的值輸出具有相應索引的對象,在本例中是工作簿名稱。
INDIRECT 可讓您動態建立儲存格路徑,因此將正確的工作表名稱嵌入到 SUM 函數所使用的路徑中。
當然,如果您的表格被命名為範圍或大小不同,您始終可以將上面範例中的靜態「A1:A3」變更為另一個CHOOSE,該CHOOSE 將根據使用者在另一個儲存格中的輸入輸出路徑的正確部分。
如果這與您想要做的事情完全不符,請原諒我 - 我不確定我是否理解您列表中的步驟 3...