2015-06-15 179 views
0

我正嘗試在Excel中創建一個聚合和圖形工具。我的數據非常簡單,但是使它變得可繪製的轉變不是。Sumif在計算範圍內

在Sheet1,我在形成行:

| Ch-x | Theme-1 | Intensity-1 | Theme-2 | Intensity-2 | 

在每行上的主題-1,-2,等會有所不同,儘管它們是一組十幾個的範圍內。這給了我每章一行。

在Sheet2中,我想變成這樣:

+---------+------+------+------+ 
|  n | Ch-1 | Ch-2 | Ch-3 | 
+---------+------+------+------+ 
| Theme-A | 8 |  | 1 | 
+---------+------+------+------+ 
| Theme-B | 4 | 9 |  | 
+---------+------+------+------+ 
| Theme-C |  | 2 | 7 | 
+---------+------+------+------+ 

這可以被繪製代表章之間的各種主題的強度。

爲此,我可以手動創建一組sumif()函數來查看正確的行,但這很乏味,因爲它不能簡單地複製該函數。這個問題部分只是部分軸線的翻轉。

爲了使它成爲可複製的,我需要一種引用sumif()中包含計算部分的範圍的方法,這將是隱藏偏移值的總和(第二個表的左上角的n ),以及章節號:有效(在單元格B2):

=sumif(Sheet1!range(B($A$1+B$1):D($A$1+B$1)), B$1, Sheet1!range(C($A$1+B$1):E($A$1+B$1))

其中我已經使用range()作爲計算開始和結束位置的函數的概念。

我該如何做這種類型的範圍定義/參考?

+0

你能證明將被用來創建轉換表中的數據_actual_?然後讓我們退一步從sumif公式考慮整個問題,因爲你正在深入研究[XY](http://meta.stackexchange.com/questions/66377/what-is-the -xy-problem)問題,具體詢問您的嘗試解決方案。 – chancea

+0

如果您真的認爲這將更容易理解...我想要將與每行相關聯的一組AB對變爲A行的每個與源行關聯的列的B值, 雖然sumif '不是特別乾淨,它做得很好...... – Rick

回答

1

INDEX函數可以給你一個範圍,你可以在SUMIF之內使用,例如,使用例如

=SUMIF(INDEX(Sheet1!B:D,$A$1+B$1,0),B$1,INDEX(Sheet1!C:E,$A$1+B$1,0))

+0

實際上,根據這個問題,'= SUMIF(INDEX(Sheet1!$ B:$ D,$ A $ 1 + B $ 1,0),$ B1,INDEX(Sheet1! $ C:$ E,$ A $ 1 + B $ 1,0)) - 但誰在爭論? – Rick

+0

顯然,你比我更瞭解這種方式 – chancea