tính tổng theo điều kiện trong mảng

Liên hệ QC
Tôi tuân thủ nội quy khi đăng bài

borntofight2007

Thành viên mới
Tham gia
12/5/24
Bài viết
2
Được thích
0
Chào các anh chị,
em đang cần tính tổng hoa hồng của nhân viên, có cách là lấy danh sách nhân viên rồi sumif từng cột nhưng như vậy thì tốn thời gian quá (vì số lượng nhân viên và dữ liệu nhiều). các anh chị có cách nào tính tổng từng mã nhân viên mà không cần phải nhập công thức sumif từng cột không ạ.
ví dụ như 1 sản phẩm có 6 nhân viên (hoặc hơn) hưởng hoa hồng khác nhau tùy theo cấp bậc
em muốn tìm tổng số hoa hồng nhân viên đó nhận được trong đó

CănGiá trị% hh 1NV1% hh 2nv2% hh 3nv3% hh 4nv4% hh 5nv5% hh 6nv6
SP1
55​
64​
Nv123
68​
nv234
68​
nv11
53​
nv22
53​
nv244
65​
n4151
SP2
82​
53​
Nv122
69​
nv231
65​
nv1123
57​
nv225
57​
nv2444
71​
n41511
SP3
94​
72​
Nv121
73​
nv228
66​
nv2235
67​
nv428
75​
nv4644
57​
n78871
SP4
26​
57​
Nv120
65​
nv225
53​
nv3347
51​
nv631
67​
nv6844
50​
n116231
SP5
10​
54​
Nv119
51​
nv222
50​
nv4459
54​
nv834
61​
nv9044
57​
n153591
SP6
89​
51​
Nv118
68​
nv219
53​
nv5571
68​
nv1037
60​
nv11244
64​
n190951
SP7
46​
64​
Nv117
58​
nv216
67​
nv6683
54​
nv1240
62​
nv13444
68​
n228311
SP8
85​
50​
Nv116
72​
nv213
74​
nv7795
62​
nv1443
51​
nv15644
50​
n265671
SP9
64​
72​
Nv115
63​
nv210
53​
nv8907
50​
nv1646
74​
nv17844
72​
n303031
SP10
47​
51​
Nv114
58​
nv207
57​
nv10019
65​
nv1849
64​
nv20044
54​
n340391
SP11
68​
56​
Nv113
55​
nv204
55​
nv11131
56​
nv2052
75​
nv22244
73​
n377751
SP12
26​
72​
Nv112
73​
nv201
67​
nv12243
55​
nv2255
66​
nv24444
51​
n415111
SP13
53​
60​
Nv111
67​
nv198
68​
nv13355
71​
nv2458
69​
nv26644
55​
n452471
SP14
100​
59​
Nv110
53​
nv195
62​
nv14467
66​
nv2661
55​
nv28844
67​
n489831
SP15
35​
50​
Nv109
55​
nv192
66​
nv15579
59​
nv2864
65​
nv31044
67​
n527191
 

File đính kèm

Chào các anh chị,
em đang cần tính tổng hoa hồng của nhân viên, có cách là lấy danh sách nhân viên rồi sumif từng cột nhưng như vậy thì tốn thời gian quá (vì số lượng nhân viên và dữ liệu nhiều). các anh chị có cách nào tính tổng từng mã nhân viên mà không cần phải nhập công thức sumif từng cột không ạ.
ví dụ như 1 sản phẩm có 6 nhân viên (hoặc hơn) hưởng hoa hồng khác nhau tùy theo cấp bậc
em muốn tìm tổng số hoa hồng nhân viên đó nhận được trong đó

CănGiá trị% hh 1NV1% hh 2nv2% hh 3nv3% hh 4nv4% hh 5nv5% hh 6nv6
SP1
55​
64​
Nv123
68​
nv234
68​
nv11
53​
nv22
53​
nv244
65​
n4151
SP2
82​
53​
Nv122
69​
nv231
65​
nv1123
57​
nv225
57​
nv2444
71​
n41511
SP3
94​
72​
Nv121
73​
nv228
66​
nv2235
67​
nv428
75​
nv4644
57​
n78871
SP4
26​
57​
Nv120
65​
nv225
53​
nv3347
51​
nv631
67​
nv6844
50​
n116231
SP5
10​
54​
Nv119
51​
nv222
50​
nv4459
54​
nv834
61​
nv9044
57​
n153591
SP6
89​
51​
Nv118
68​
nv219
53​
nv5571
68​
nv1037
60​
nv11244
64​
n190951
SP7
46​
64​
Nv117
58​
nv216
67​
nv6683
54​
nv1240
62​
nv13444
68​
n228311
SP8
85​
50​
Nv116
72​
nv213
74​
nv7795
62​
nv1443
51​
nv15644
50​
n265671
SP9
64​
72​
Nv115
63​
nv210
53​
nv8907
50​
nv1646
74​
nv17844
72​
n303031
SP10
47​
51​
Nv114
58​
nv207
57​
nv10019
65​
nv1849
64​
nv20044
54​
n340391
SP11
68​
56​
Nv113
55​
nv204
55​
nv11131
56​
nv2052
75​
nv22244
73​
n377751
SP12
26​
72​
Nv112
73​
nv201
67​
nv12243
55​
nv2255
66​
nv24444
51​
n415111
SP13
53​
60​
Nv111
67​
nv198
68​
nv13355
71​
nv2458
69​
nv26644
55​
n452471
SP14
100​
59​
Nv110
53​
nv195
62​
nv14467
66​
nv2661
55​
nv28844
67​
n489831
SP15
35​
50​
Nv109
55​
nv192
66​
nv15579
59​
nv2864
65​
nv31044
67​
n527191
Chưa hiểu lắm, bạn làm thủ công kết quả mong muốn của vài nhân viên xem cách tính như thế nào.
 
Lần chỉnh sửa cuối:
Em up lại file để diễn giải rõ hơn mong muốn ạ.
đây là data:
CănGiá trị% hh 1NV1% hh 2nv2% hh 3nv3% hh 4nv4% hh 5nv5% hh 6nv6
SP1
55​
64​
Nhân Viên 2
68​
Nhân Viên 4
68​
Nhân Viên 8
53​
Nhân Viên 10
53​
Nhân Viên 8
65​
Nhân Viên 6
SP2
82​
53​
Nhân Viên 7
69​
Nhân Viên 6
65​
Nhân Viên 4
57​
Nhân Viên 3
57​
Nhân Viên 10
71​
Nhân Viên 6
SP3
94​
72​
Nhân Viên 7
73​
Nhân Viên 8
66​
Nhân Viên 8
67​
Nhân Viên 3
75​
Nhân Viên 10
57​
Nhân Viên 6
SP4
26​
57​
Nhân Viên 1
65​
Nhân Viên 6
53​
Nhân Viên 9
51​
Nhân Viên 6
67​
Nhân Viên 9
50​
Nhân Viên 5
SP5
10​
54​
Nhân Viên 4
51​
Nhân Viên 9
50​
Nhân Viên 9
54​
Nhân Viên 9
61​
Nhân Viên 3
57​
Nhân Viên 9
SP6
89​
51​
Nhân Viên 7
68​
Nhân Viên 4
53​
Nhân Viên 2
68​
Nhân Viên 4
60​
Nhân Viên 4
64​
Nhân Viên 2
SP7
46​
64​
Nhân Viên 4
58​
Nhân Viên 2
67​
Nhân Viên 5
54​
Nhân Viên 2
62​
Nhân Viên 4
68​
Nhân Viên 6
SP8
85​
50​
Nhân Viên 7
72​
Nhân Viên 1
74​
Nhân Viên 10
62​
Nhân Viên 1
51​
Nhân Viên 6
50​
Nhân Viên 2
SP9
64​
72​
Nhân Viên 3
63​
Nhân Viên 3
53​
Nhân Viên 1
50​
Nhân Viên 5
74​
Nhân Viên 6
72​
Nhân Viên 1
SP10
47​
51​
Nhân Viên 9
58​
Nhân Viên 9
57​
Nhân Viên 6
65​
Nhân Viên 1
64​
Nhân Viên 6
54​
Nhân Viên 6
SP11
68​
56​
Nhân Viên 3
55​
Nhân Viên 6
55​
Nhân Viên 5
56​
Nhân Viên 4
75​
Nhân Viên 2
73​
Nhân Viên 9
SP12
26​
72​
Nhân Viên 8
73​
Nhân Viên 7
67​
Nhân Viên 8
55​
Nhân Viên 9
66​
Nhân Viên 7
51​
Nhân Viên 2
SP13
53​
60​
Nhân Viên 10
67​
Nhân Viên 5
68​
Nhân Viên 5
71​
Nhân Viên 4
69​
Nhân Viên 1
55​
Nhân Viên 9
SP14
100​
59​
Nhân Viên 3
53​
Nhân Viên 2
62​
Nhân Viên 2
66​
Nhân Viên 4
55​
Nhân Viên 4
67​
Nhân Viên 4
SP15
35​
50​
Nhân Viên 3
55​
Nhân Viên 2
66​
Nhân Viên 8
59​
Nhân Viên 7
65​
Nhân Viên 8
67​
Nhân Viên 2

Và đây là kết quả em mong muốn:

Row LabelsSum of Hoa hồng
Nhân Viên 1
450​
Nhân Viên 10
319​
Nhân Viên 2
706​
Nhân Viên 3
485​
Nhân Viên 4
824​
Nhân Viên 5
357​
Nhân Viên 6
801​
Nhân Viên 7
424​
Nhân Viên 8
530​
Nhân Viên 9
624​
Grand Total
5520​
 

File đính kèm

Em up lại file để diễn giải rõ hơn mong muốn ạ.
đây là data:
CănGiá trị% hh 1NV1% hh 2nv2% hh 3nv3% hh 4nv4% hh 5nv5% hh 6nv6
SP1
55​
64​
Nhân Viên 2
68​
Nhân Viên 4
68​
Nhân Viên 8
53​
Nhân Viên 10
53​
Nhân Viên 8
65​
Nhân Viên 6
SP2
82​
53​
Nhân Viên 7
69​
Nhân Viên 6
65​
Nhân Viên 4
57​
Nhân Viên 3
57​
Nhân Viên 10
71​
Nhân Viên 6
SP3
94​
72​
Nhân Viên 7
73​
Nhân Viên 8
66​
Nhân Viên 8
67​
Nhân Viên 3
75​
Nhân Viên 10
57​
Nhân Viên 6
SP4
26​
57​
Nhân Viên 1
65​
Nhân Viên 6
53​
Nhân Viên 9
51​
Nhân Viên 6
67​
Nhân Viên 9
50​
Nhân Viên 5
SP5
10​
54​
Nhân Viên 4
51​
Nhân Viên 9
50​
Nhân Viên 9
54​
Nhân Viên 9
61​
Nhân Viên 3
57​
Nhân Viên 9
SP6
89​
51​
Nhân Viên 7
68​
Nhân Viên 4
53​
Nhân Viên 2
68​
Nhân Viên 4
60​
Nhân Viên 4
64​
Nhân Viên 2
SP7
46​
64​
Nhân Viên 4
58​
Nhân Viên 2
67​
Nhân Viên 5
54​
Nhân Viên 2
62​
Nhân Viên 4
68​
Nhân Viên 6
SP8
85​
50​
Nhân Viên 7
72​
Nhân Viên 1
74​
Nhân Viên 10
62​
Nhân Viên 1
51​
Nhân Viên 6
50​
Nhân Viên 2
SP9
64​
72​
Nhân Viên 3
63​
Nhân Viên 3
53​
Nhân Viên 1
50​
Nhân Viên 5
74​
Nhân Viên 6
72​
Nhân Viên 1
SP10
47​
51​
Nhân Viên 9
58​
Nhân Viên 9
57​
Nhân Viên 6
65​
Nhân Viên 1
64​
Nhân Viên 6
54​
Nhân Viên 6
SP11
68​
56​
Nhân Viên 3
55​
Nhân Viên 6
55​
Nhân Viên 5
56​
Nhân Viên 4
75​
Nhân Viên 2
73​
Nhân Viên 9
SP12
26​
72​
Nhân Viên 8
73​
Nhân Viên 7
67​
Nhân Viên 8
55​
Nhân Viên 9
66​
Nhân Viên 7
51​
Nhân Viên 2
SP13
53​
60​
Nhân Viên 10
67​
Nhân Viên 5
68​
Nhân Viên 5
71​
Nhân Viên 4
69​
Nhân Viên 1
55​
Nhân Viên 9
SP14
100​
59​
Nhân Viên 3
53​
Nhân Viên 2
62​
Nhân Viên 2
66​
Nhân Viên 4
55​
Nhân Viên 4
67​
Nhân Viên 4
SP15
35​
50​
Nhân Viên 3
55​
Nhân Viên 2
66​
Nhân Viên 8
59​
Nhân Viên 7
65​
Nhân Viên 8
67​
Nhân Viên 2

Và đây là kết quả em mong muốn:

Row LabelsSum of Hoa hồng
Nhân Viên 1
450​
Nhân Viên 10
319​
Nhân Viên 2
706​
Nhân Viên 3
485​
Nhân Viên 4
824​
Nhân Viên 5
357​
Nhân Viên 6
801​
Nhân Viên 7
424​
Nhân Viên 8
530​
Nhân Viên 9
624​
Grand Total
5520​
Sử dụng khám phá tuyệt vời của bạn @Phan Thế Hiệp về hàm N và hàm T
Mã:
J3 =SUMPRODUCT(N(+Sheet1!$C$2:$M$16)*(Sheet1!$D$2:$N$16=G3))
 

File đính kèm

Em up lại file để diễn giải rõ hơn mong muốn ạ.
đây là data:
CănGiá trị% hh 1NV1% hh 2nv2% hh 3nv3% hh 4nv4% hh 5nv5% hh 6nv6
SP1
55​
64​
Nhân Viên 2
68​
Nhân Viên 4
68​
Nhân Viên 8
53​
Nhân Viên 10
53​
Nhân Viên 8
65​
Nhân Viên 6
SP2
82​
53​
Nhân Viên 7
69​
Nhân Viên 6
65​
Nhân Viên 4
57​
Nhân Viên 3
57​
Nhân Viên 10
71​
Nhân Viên 6
SP3
94​
72​
Nhân Viên 7
73​
Nhân Viên 8
66​
Nhân Viên 8
67​
Nhân Viên 3
75​
Nhân Viên 10
57​
Nhân Viên 6
SP4
26​
57​
Nhân Viên 1
65​
Nhân Viên 6
53​
Nhân Viên 9
51​
Nhân Viên 6
67​
Nhân Viên 9
50​
Nhân Viên 5
SP5
10​
54​
Nhân Viên 4
51​
Nhân Viên 9
50​
Nhân Viên 9
54​
Nhân Viên 9
61​
Nhân Viên 3
57​
Nhân Viên 9
SP6
89​
51​
Nhân Viên 7
68​
Nhân Viên 4
53​
Nhân Viên 2
68​
Nhân Viên 4
60​
Nhân Viên 4
64​
Nhân Viên 2
SP7
46​
64​
Nhân Viên 4
58​
Nhân Viên 2
67​
Nhân Viên 5
54​
Nhân Viên 2
62​
Nhân Viên 4
68​
Nhân Viên 6
SP8
85​
50​
Nhân Viên 7
72​
Nhân Viên 1
74​
Nhân Viên 10
62​
Nhân Viên 1
51​
Nhân Viên 6
50​
Nhân Viên 2
SP9
64​
72​
Nhân Viên 3
63​
Nhân Viên 3
53​
Nhân Viên 1
50​
Nhân Viên 5
74​
Nhân Viên 6
72​
Nhân Viên 1
SP10
47​
51​
Nhân Viên 9
58​
Nhân Viên 9
57​
Nhân Viên 6
65​
Nhân Viên 1
64​
Nhân Viên 6
54​
Nhân Viên 6
SP11
68​
56​
Nhân Viên 3
55​
Nhân Viên 6
55​
Nhân Viên 5
56​
Nhân Viên 4
75​
Nhân Viên 2
73​
Nhân Viên 9
SP12
26​
72​
Nhân Viên 8
73​
Nhân Viên 7
67​
Nhân Viên 8
55​
Nhân Viên 9
66​
Nhân Viên 7
51​
Nhân Viên 2
SP13
53​
60​
Nhân Viên 10
67​
Nhân Viên 5
68​
Nhân Viên 5
71​
Nhân Viên 4
69​
Nhân Viên 1
55​
Nhân Viên 9
SP14
100​
59​
Nhân Viên 3
53​
Nhân Viên 2
62​
Nhân Viên 2
66​
Nhân Viên 4
55​
Nhân Viên 4
67​
Nhân Viên 4
SP15
35​
50​
Nhân Viên 3
55​
Nhân Viên 2
66​
Nhân Viên 8
59​
Nhân Viên 7
65​
Nhân Viên 8
67​
Nhân Viên 2

Và đây là kết quả em mong muốn:

Row LabelsSum of Hoa hồng
Nhân Viên 1
450​
Nhân Viên 10
319​
Nhân Viên 2
706​
Nhân Viên 3
485​
Nhân Viên 4
824​
Nhân Viên 5
357​
Nhân Viên 6
801​
Nhân Viên 7
424​
Nhân Viên 8
530​
Nhân Viên 9
624​
Grand Total
5520​
Tập tành Power Query nhưng các bước vẫn cồng kềnh quá (hy vọng có bác nào làm lại để học hỏi ạ)

Thêm dữ liệu vào bảng dữ liệu, rồi ở sheet Table1, chuột phải vào pivottable chọn Refresh
 

File đính kèm

Tập tành Power Query nhưng các bước vẫn cồng kềnh quá (hy vọng có bác nào làm lại để học hỏi ạ)
Ít step thôi nè

JavaScript:
let
    Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
    Unpivot = Table.UnpivotOtherColumns(Source, {"Căn", "Giá trị", "NV1", "nv2", "nv3", "nv4", "nv5", "nv6"}, "Attribute", "Value"),
    AddIndex = Table.AddIndexColumn(Unpivot, "Index", 1, 1, Int64.Type),
    AddMod6 = Table.AddColumn(AddIndex, "Mod", each Number.Mod([Index],6)),
    AddNV = Table.AddColumn(AddMod6, "NV", each if [Mod] = 1 then [NV1]
        else if [Mod] = 2 then [nv2]
        else if [Mod] = 3 then [nv3]
        else if [Mod] = 4 then [nv4]
        else if [Mod] = 5 then [nv5]
        else [nv6]),
    RemoveColumns = Table.SelectColumns(AddNV,{"Value", "NV"}),
   Types = Table.TransformColumnTypes(RemoveColumns,{{"Value", Int64.Type}})
in
    Types

Tuy nhiên công thức bài 5 là hay nhất, trên chục năm mới thấy lại kiểu SumIf so le này.
 
Tập tành Power Query nhưng các bước vẫn cồng kềnh quá (hy vọng có bác nào làm lại để học hỏi ạ)
Ngoại trừ thuật toán không tốt dẫn đến việc trải qua nhiều bước, vẫn cón những bước không cần thiết có thể xóa bỏ, chẳng hạn như

1716913429735.png
- bước số 2 Change Type cho những cột sẽ bị un pivot và biến mất (xóa cũng được)
- Hai bước rename column nếu thực hiện liên tiếp nhau sẽ chỉ tạo 1 step thay vì 2
- Thậm chí Hai bước Rename column có thể xóa luôn, mà sửa tên ngay trong khi tạo column

1716913826839.png

- Step Remove Column thay bằng Table.SelectColumns và chỉ select 2 cột. Câu lệnh ngắn mà vẫn đủ 2 cột cần dùng. Những cột kia dư quá chẳng làm gì.

1716914247920.png

Sau khi dọn dẹp sơ bộ

1716914777326.png

JavaScript:
let
    Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
    #"Unpivoted Columns" = Table.UnpivotOtherColumns(Source, {"Căn", "Giá trị"}, "Attribute", "Value"),
    #"Added Index" = Table.AddIndexColumn(#"Unpivoted Columns", "Index", 0, 1, Int64.Type),
    #"Added Custom" = Table.AddColumn(#"Added Index", "Custom", each if Number.Mod([Index],2)=0 then [NV1] else null),
    #"Added Custom1" = Table.AddColumn(#"Added Custom", "Custom.1", each if Number.Mod([Index],2)=1 then [HH1] else null),
    #"Replaced Errors" = Table.ReplaceErrorValues(#"Added Custom1", {{"Custom", "NV"}}),
    #"Replaced Errors1" = Table.ReplaceErrorValues(#"Replaced Errors", {{"Custom.1", "Nb"}}),
    #"Added Conditional Column" = Table.AddColumn(#"Replaced Errors1", "Hoa hồng", each if [Custom] = "NV" then [Value] else null),
    #"Added Conditional Column1" = Table.AddColumn(#"Added Conditional Column", "Tên NV", each if [Custom.1] = "Nb" then [Value] else null),
    #"Filled Down" = Table.FillDown(#"Added Conditional Column1",{"Hoa hồng"}),
    #"Filtered Rows" = Table.SelectRows(#"Filled Down", each ([Tên NV] <> null)),
    #"Removed Other Columns" = Table.SelectColumns(#"Filtered Rows",{"Hoa hồng", "Tên NV"}),
    #"Changed Type1" = Table.TransformColumnTypes(#"Removed Other Columns",{{"Hoa hồng", Int64.Type}})
in
    #"Changed Type1"
 
Lần chỉnh sửa cuối:
Ngoại trừ thuật toán không tốt dẫn đến việc trải qua nhiều bước, vẫn cón những bước không cần thiết có thể xóa bỏ, chẳng hạn như

View attachment 301209
- bước số 2 Change Type cho những cột sẽ bị un pivot và biến mất (xóa cũng được)
- Hai bước rename column nếu thực hiện liên tiếp nhau sẽ chỉ tạo 1 step thay vì 2
- Thậm chí Hai bước Rename column có thể xóa luôn, mà sửa tên ngay trong khi tạo column

View attachment 301210

- Step Remove Column thay bằng Table.SelectColumns và chỉ select 2 cột. Câu lệnh ngắn mà vẫn đủ 2 cột cần dùng. Những cột kia dư quá chẳng làm gì.

View attachment 301211

Sau khi dọn dẹp sơ bộ

View attachment 301212

JavaScript:
let
    Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Căn", type text}, {"Giá trị", Int64.Type}, {"% hh 1", Int64.Type}, {"NV1", type text}, {"% hh 2", Int64.Type}, {"nv2", type text}, {"% hh 3", Int64.Type}, {"nv3", type text}, {"% hh 4", Int64.Type}, {"nv4", type text}, {"% hh 5", Int64.Type}, {"nv5", type text}, {"% hh 6", Int64.Type}, {"nv6", type text}}),
    #"Unpivoted Columns" = Table.UnpivotOtherColumns(#"Changed Type", {"Căn", "Giá trị"}, "Attribute", "Value"),
    #"Added Index" = Table.AddIndexColumn(#"Unpivoted Columns", "Index", 0, 1, Int64.Type),
    #"Added Custom" = Table.AddColumn(#"Added Index", "Custom", each if Number.Mod([Index],2)=0 then [NV1] else null),
    #"Added Custom1" = Table.AddColumn(#"Added Custom", "Custom.1", each if Number.Mod([Index],2)=1 then [HH1] else null),
    #"Replaced Errors" = Table.ReplaceErrorValues(#"Added Custom1", {{"Custom", "NV"}}),
    #"Replaced Errors1" = Table.ReplaceErrorValues(#"Replaced Errors", {{"Custom.1", "Nb"}}),
    #"Added Conditional Column" = Table.AddColumn(#"Replaced Errors1", "Hoa hồng", each if [Custom] = "NV" then [Value] else null),
    #"Added Conditional Column1" = Table.AddColumn(#"Added Conditional Column", "Tên NV", each if [Custom.1] = "Nb" then [Value] else null),
    #"Filled Down" = Table.FillDown(#"Added Conditional Column1",{"Hoa hồng"}),
    #"Filtered Rows" = Table.SelectRows(#"Filled Down", each ([Tên NV] <> null)),
    #"Removed Other Columns" = Table.SelectColumns(#"Filtered Rows",{"Hoa hồng", "Tên NV"}),
    #"Changed Type1" = Table.TransformColumnTypes(#"Removed Other Columns",{{"Hoa hồng", Int64.Type}})
in
    #"Changed Type1"
hì, cảm ơn chú đã tận tâm chỉ giúp cháu ạ
Dùng M_code của chú cải thiện tốc độ hơn nhiều ạ, cháu sẽ tham khảo và học thêm từ từ về món này. Xin cảm ơn chú rất nhiều :)
 
Thêm cách khác cho các bạn đang tìm hiểu Query tham khảo.
Mã:
let
    Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
    RemovedColumns = Table.RemoveColumns(Source,{"Căn", "Giá trị"}),
    Custom1 = Table.FromColumns({List.Transform(List.Split(Table.ToColumns(RemovedColumns),2), each Table.FromColumns(_,{"Luong","Ten"}))}),
    #"Expanded Column1" = Table.ExpandTableColumn(Custom1, "Column1", {"Luong", "Ten"}, {"Luong", "Ten"}),
    #"Grouped Rows" = Table.Group(#"Expanded Column1", {"Ten"}, {{"Tong", each List.Sum([Luong]), type number}})
in
    #"Grouped Rows"
 

File đính kèm

  • Untitled.png
    Untitled.png
    27.8 KB · Đọc: 5
Lần chỉnh sửa cuối:
Dùng power query thêm cách
Mã:
// Table1
let
    Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
    Custom2 = Table.Group(#table({"hh","Nhân viên"}, List.Accumulate(Table.ToRows(Source),{},(x,y)=> x&List.Split(List.Skip(y,2),2))),"Nhân viên",{"Hoa hồng", each List.Sum([hh])})
in
    Custom2
 
Web KT

Bài viết mới nhất

Back
Top Bottom