Nhờ hỗ trợ hàm tính thưởng theo từng loại danh mục

  • Thread starter Thread starter perose
  • Ngày gửi Ngày gửi
Liên hệ QC

perose

Thành viên mới
Tham gia
7/4/20
Bài viết
18
Được thích
7
Nhờ các bác hỗ trợ em hàm gộp cách tính thưởng cho nhiều loại danh mục ạ. Em có mô tả cụ thể trong file đính kèm ạ. Em chân thành cảm ơn ạ.
 

File đính kèm

Nhờ các bác hỗ trợ em hàm gộp cách tính thưởng cho nhiều loại danh mục ạ. Em có mô tả cụ thể trong file đính kèm ạ. Em chân thành cảm ơn ạ.
Thử:
Mã:
S32=SUM(IFERROR(SUMIF(C$1:N$1,F$31:Q$31,OFFSET(C$1,(MATCH(N(OFFSET(D32,,{0;1})),{50,70}%)=1)*4+R32,)),)*(LEFT(F$31:Q$31)={"O";"E"})*F32:Q32)
Kết thúc bằng Ctrl+Shift+Enter, xong fill xuống.

Thân
 

File đính kèm

Lần chỉnh sửa cuối:
Nhờ các bác hỗ trợ em hàm gộp cách tính thưởng cho nhiều loại danh mục ạ. Em có mô tả cụ thể trong file đính kèm ạ. Em chân thành cảm ơn ạ.
Bạn cũng có thể dùng công thức sau cho ô S32 nhé!
=SUMPRODUCT(F32:K32*OFFSET($C$1:$H$1,R32+IF(D32>=0.7,0,IF(D32>=0.5,4,7)),)+L32:Q32*OFFSET($I$1:$N$1,R32+IF(E32>=0.7,0,IF(E32>=0.5,4,7)),))
 
Thử:
Mã:
S32=SUM(IFERROR(SUMIF(C$1:N$1,F$31:Q$31,OFFSET(C$1,(MATCH(N(OFFSET(D32,,{0;1})),{50,70}%)=1)*4+R32,)),)*(LEFT(F$31:Q$31)={"O";"E"})*F32:Q32)
Kết thúc bằng Ctrl+Shift+Enter, xong fill xuống.

Thân
Cái chỗ N(OFFSET(D32,,{0;1}) tôi đổi thành CHOOSE({1;2}, D32, E32) thì tôi tránh được hàm OFFSET chỗ này.
Hàm OFFSET còn lại tôi chưa "decypher/decipher" được xem nó làm cái gì nên chưa biết xử lý.
(mục đích tránh cái tính chất "volatile" của OFFSET)
 
Cái chỗ N(OFFSET(D32,,{0;1}) tôi đổi thành CHOOSE({1;2}, D32, E32) thì tôi tránh được hàm OFFSET chỗ này.
Hàm OFFSET còn lại tôi chưa "decypher/decipher" được xem nó làm cái gì nên chưa biết xử lý.
(mục đích tránh cái tính chất "volatile" của OFFSET)
Cảm ơn anh đã trao đổi. :)

1/ Dùng Offset() do thói quen anh ạ!
Thường thì khi tạo mảng bằng Offset() sẽ tránh được nhấn tổ hợp phím CSE sau cùng, nên em hay ưu tiên cho nó và Index(). Dùng Choose() như anh nêu, hay N(If({1;0},D32,E32)) thì dù có bao bằng Sumproduct() hay Index(...,) thì cũng bắt buộc nhấn tổ hợp CSE.

2/ Offset() còn lại là cách lấy mảng ghép 1 chiều, rồi dùng tính năng độc đáo của Sumif(), tức đối số thứ 3 của nó chỉ cần hiện địa chỉ 1 ô, để sau cùng sẽ tạo thành mảng 2 chiều. Dùng Sumif() cũng ngừa chủ thớt cho các cột "danh mục" không theo sắp xếp thứ tự giống nhau. Cũng có thể dùng Index() để thay thế Offset(), nhưng chưa thử do cũng "thói quen". Có lẽ là do hàm này hợp với tính khí "tung hoành ngang dọc" không bị gò bó giới hạn như hàm Index() nên lúc nào cũng chọn nó, mặc kệ nó có "volatile" hay không anh ạ. Chẳng qua cũng là phút thư giản cuối tuần.

Khà khà khà
/-*+//-*+//-*+/

Chúc anh luôn vui tươi khỏe mạnh.

Nói thêm cho vui: Gia phả Ông Bà Sơ đặt tên cho Con-Cháu theo câu đối sau:

"Chí quân tử cửu châu lập nghiệp
Đại trượng phu tứ hải vi gia"


Bởi vậy giờ.... hi hi
 
Lần chỉnh sửa cuối:
tham khảo công thức dài này nhé =SUMPRODUCT(TRANSPOSE($F32:$Q32);IF(AND($D32>=70%;$E32>=70%);OFFSET($B$1;MATCH($R32;$B$2:$B$4;0);1;COUNTA($C$1:$N$1);1);IF(AND($D32>=50%;$E32>=50%;$D32<70%;$E32<70%);OFFSET($B$5;MATCH($R32;$B$6:$B$8;0);1;COUNTA($C$1:$N$1);1);"")))
Bài đã được tự động gộp:

Cái chỗ N(OFFSET(D32,,{0;1}) tôi đổi thành CHOOSE({1;2}, D32, E32) thì tôi tránh được hàm OFFSET chỗ này.
Hàm OFFSET còn lại tôi chưa "decypher/decipher" được xem nó làm cái gì nên chưa biết xử lý.
(mục đích tránh cái tính chất "volatile" của OFFSET)
Các bác toàn công thức hay, :)) khi nào em mới tư duy viết được như các bác đây
 
Cảm ơn anh đã trao đổi. :)

1/ Dùng Offset() do thói quen anh ạ!
...

2/ ... Có lẽ là do hàm này hợp với tính khí "tung hoành ngang dọc" không bị gò bó giới hạn như hàm Index() nên lúc nào cũng chọn nó, mặc kệ nó có "volatile" hay không anh ạ. Chẳng qua cũng là phút thư giản cuối tuần....

1/ Offset bị cái tội khác là không rõ rệt. Nói cách khác là phải quen lắm mới nhìn ra là nó 'offset' tới cái gì.
Ví dụ: Offset A -> 1 bước thì là B, nhưng công thức không thấy B, phải F9 mới thấy.
(Choose thường cho thấy rõ là nó ghép cái gì. Index - với dấu hai chấm/colon - cũng bị tội nhìn không rõ)

2/ Nhìn theo bình diện khác thì đúng như bạn nói, chính cái 'không rõ rệt' ấy là cái tự do, không gò bó của nó.

Nói thêm cho vui: Gia phả Ông Bà Sơ đặt tên cho Con-Cháu theo câu đối sau:

"Chí quân tử cửu châu lập nghiệp
Đại trượng phu tứ hải vi gia"


Bởi vậy giờ.... hi hi

Quân tử cố cùng tư cố thổ
Anh hùng vô lệ hối vô hương
 
Web KT

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

Back
Top Bottom