Deprecated : The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
PIVOTBY関数さえ覚えれば、GROUPBY関数はいらない?:Excel関数
Home »
エクセル関数一覧表 »
Excel関数の目次 »
PIVOTBY関数さえ覚えれば、GROUPBY関数はいらない?
GROUPBY関数とPIVOTBY関数が Excel for Microsoft365 で使用できるようになりました。
この2つの関数を比べるとそっくりな関数なのに気づきます。
PIVOTBY関数さえ覚えれば、GROUPBY関数を使う必要がなかったりするのでは?と思います。
更新:2024/11/27;作成:2024/11/26
PIVOTBY関数とGROUPBY関数の引数
PIVOTBY関数の引数
GROUPBY関数の引数
引数
意味
引数
意味
row_fields
必須
行のデータ
row_fields
必須
行のデータ
col_fields
必須
列のデータ
values
必須
値
values
必須
値
function
必須
計算方法
function
必須
計算方法
field_headers
省略可
ヘッダーの表示方法
field_headers
省略可
ヘッダーの表示方法
row_total_depth
省略可
行の合計の表示方法
total_depth
省略可
合計の表示方法
row_sort_order
省略可
行の並べ替え
sort_order
省略可
並べ替え
col_total_depth
省略可
列の合計の表示方法
col_sort_order
省略可
列の並べ替え
filter_array
省略可
フィルター
filter_array
省略可
フィルター
field_relationship
省略可
リレーション
field_relationship
省略可
リレーション
引数を比較すると、GROUPBY関数に列に関する引数を付け加えると、PIVOTBY関数と同じになります。
ただし、MicrosoftのHelpではPIVOTBY関数の引数 col_fields は必須となっています、
そのまま読めば、この引数を記述しないとこの関数は正常に働かないのでは?・・・と思いますが・・・。
ここの数式をトレースできるように使用したデータをリストにしておきますので、ご利用ください。
B
C
D
E
F
G
3
番号
氏名
年齢
性別
血液型
得点
4
1
上原嘉男
44
男
O
91
5
2
森永彩芽
58
女
A
98
6
3
古田恵
41
女
AB
61
7
4
太田千恵子
34
女
B
46
8
5
豊田啓一
38
男
O
78
9
6
新村遥奈
29
女
A
76
10
7
坂元彩香
38
女
AB
68
11
8
坪井尚生
45
男
A
77
12
9
西原舞
47
女
B
41
13
10
中野野乃花
51
女
O
93
14
11
岩渕佳代
44
女
A
61
15
12
市村将文
58
男
AB
66
16
13
芦田公平
59
男
A
90
17
14
高見美姫
34
女
AB
81
18
15
高山晴彦
65
男
B
76
19
16
高島嘉子
53
女
A
85
20
17
蛭田功一
46
男
O
60
21
18
北奈那
42
女
B
84
22
19
本田明莉
62
女
A
66
23
20
東海林真依
63
女
AB
92
I4セルに =GROUPBY (成績表[血液型],成績表[得点],SUM,0,0) と入力しています。
I11セルには =PIVOTBY (成績表[血液型],, 成績表[得点],SUM,0,0) と引数 col_fields を省略しています。
計算結果は全く同じです。
PivotBy関数の引数 col_fields を省略しても計算が実行できるのがわかります。
I4セル =GROUPBY (成績表[[性別]:[血液型]],成績表[得点],SUM,0,2)
M4セル =PIVOTBY (成績表[[性別]:[血液型]],, 成績表[得点],SUM,0,2)
同じ結果が得られました。
I4セル =GROUPBY (成績表[血液型],HSTACK(成績表[年齢],成績表[得点]),HSTACK(AVERAGE,SUM))
M4セル =PIVOTBY (成績表[血液型],, HSTACK(成績表[年齢],成績表[得点]),HSTACK(AVERAGE,SUM))
同じ結果になりました。
PivotBy関数の列関連の引数 col_fields col_total_depth col_sort_orderを省略することでも、GroupBy関数と同じ結果を得ることができます。
I4セル =GROUPBY (成績表[血液型],HSTACK(成績表[年齢],成績表[得点]),
HSTACK(AVERAGE,SUM),,1,3,成績表[血液型]<>"AB")
M4セル =PIVOTBY (成績表[血液型],, HSTACK(成績表[年齢],成績表[得点]),
HSTACK(AVERAGE,SUM),,1,3,,, 成績表[血液型]<>"AB")
下図のように同じ結果になりました。
スポンサードリンク
Home »
エクセル関数一覧表 » PIVOTBY関数さえ覚えれば、GROUPBY関数はいらない?
PageViewCounter
Since2006/2/27