GROUPBY
說明
GROUPBY 是一個強大的函數,通常可以取代 COUNTIF(S)、AVERAGEIF(S) 和 SUMIF(S)。GROUPBY 會匯總資料,並根據您指定的順序對結果進行排序。分組依據的是您可以在表格中預先定義的索引鍵,您也可以使用工作簿中的欄來定義分組。結果看起來類似於已排序的樞紐分析表。此功能通常可做為人員編制規劃的一部分。
當您將某個儲存格陣列分組時,其中一些實例值表示為字串,而另一些則表示為實例 (Workday 報告中的變量),GROUPBY 會依據實例名稱而非實例 ID 進行分組。GROUPBY 會將相同的名稱分組在一起,即使實例 ID 不同也是如此。
語法
GROUPBY(
join_by_matrix
, join_by_matrix_column_indexes
, group_by_matrix
, group_by_matrix_column_indexes
, group_by_matrix_aggregate_column_indexes
, [group_by_matrix_aggregate_types]
) - join_by_matrix︰唯一 ID (索引鍵) 的一維陣列,用於識別分組時要包含的列。
- join_by_matrix_column_indexes︰關鍵點在「」中的開始位置join_by_matrix,或組成相符索引鍵的欄集 (用於串連以建立主索引鍵的欄值)。
- group_by_matrix︰要分組的儲存格陣列。
- group_by_matrix_column_indexes︰包含 中索引鍵的欄所在位置group_by_matrix。
- group_by_matrix_aggregate_column_indexes︰要分組的值所在欄的位置。
- group_by_matrix_aggregate_types︰要執行的作業。引數值作業0SUM (預設值)1COUNT 個非空值2COUNT 個非零數字3MIN 數字4數字上限5AVG 數字
範例
工作簿有 2 個工作表,名為「工作」和「組織」。這是工作表︰
A | B | C | D | E | F | G | H | I | |
|---|---|---|---|---|---|---|---|---|---|
1 | 督導組織
| 成本中心
| 公司
| 地點
| 名稱
| 2017 年 1 月 (人力資本)
| 2017 年 2 月 (人力資本)
| 2017 年 3 月 (人力資本)
| 組織 KEY
|
2 | 財務 | CC-1 財務 | GMS | 普萊森頓 | 蒂姆 | 1 | 1 | 1 | FinanceCC-1 FinanceGMSPleasanton |
3 | 產品管理 | CC-2 產品 | GMS | 巨石 | 約什 | 0 | 0 | 1 | Product ManagementCC-2 ProductGMSBoulder |
4 | 發展 | CC-3 發展 | GMS-CA | 多倫多 | 布賴恩 | 1 | 1 | 1 | DevelopmentCC-3 DevelopmentGMS-CAToronto |
5 | 產品管理 | CC-2 產品 | GMS | 巨石 | 司各特 | 0 | 1 | 1 | Product ManagementCC-2 ProductGMSBoulder |
6 | 發展 | CC-3 發展 | GMS-CA | 多倫多 | 萊尼 | 1 | 1 | 1 | DevelopmentCC-3 DevelopmentGMS-CAToronto |
7 | 銷售 | CC-4 Sales | GMS-UK | 倫敦 | 安迪 | 0 | 1 | 1 | SalesCC-4 SalesGMS-UKLondon |
8 | 財務 | CC-1 財務 | GMS | 普萊森頓 | 拉特納 | 1 | 1 | 1 | FinanceCC-1 FinanceGMSPleasanton |
9 | 銷售 | CC-4 Sales | GMS-UK | 多倫多 | 艾丹 | 0 | 0 | 1 | SalesCC-4 SalesGMS-UKToronto |
10 | 銷售 | CC-4 Sales | GMS-UK | 倫敦 | 凱蒂 | 1 | 1 | 1 | SalesCC-4 SalesGMS-UKLondon |
11 | 總計 | 5 | 7 | 9 |
GROUPBY 陣列公式位於工作表組織的 E2:G6 儲存格中︰
=GROUPBY('Organization'!H2:H6,1,'Working'!A2:I10,9,{6, 7, 8})
或者,您可以指定希望 GROUPBY 做為索引鍵的欄,而不是分別產生上方 I 欄和下方 H 欄所示的索引鍵︰
=GROUPBY('Organization'!A2:G6,{1,2,3,4},'Working'!A2:H10,{1,2,3,4},{6, 7, 8})
此公式會在工作表組織中傳回以下結果︰
A | B | C | D | E | F | G | H | |
|---|---|---|---|---|---|---|---|---|
1 | 督導組織
| 成本中心
| 公司
| 地點
| 2017 年 1 月 (人力資本)
| 2017 年 2 月 (人力資本)
| 2017 年 3 月 (人力資本)
| 組織 KEY
|
2 | 財務 | CC-1 財務 | GMS | 普萊森頓 | 2 | 2 | 2 | FinanceCC-1 FinanceGMSPleasanton |
3 | 產品管理 | CC-2 產品 | GMS | 巨石 | 0 | 1 | 2 | Product ManagementCC-2 ProductGMSBoulder |
4 | 發展 | CC-3 發展 | GMS-CA | 多倫多 | 2 | 2 | 2 | DevelopmentCC-3 DevelopmentGMS-CAToronto |
5 | 銷售 | CC-4 Sales | GMS-UK | 倫敦 | 1 | 2 | 2 | SalesCC-4 SalesGMS-UKLondon |
6 | 銷售 | CC-4 Sales | GMS-UK | 多倫多 | 0 | 0 | 1 | SalesCC-4 SalesGMS-UKToronto |
7 | 5 | 7 | 9 |
請注意,組織工作表中的第 7 列是人員編制總數的簡單計算;此區域不在計畫輸入區域內。
附註
- 對日期值執行運算時,GROUPBY 會在計算前將日期轉換為序號,且不會將顯示格式還原為日期。若要顯示日期格式,請選取「設定 。
相關函數
ARRAYAREA