Strawberry1312
Thành viên mới

- Tham gia
- 14/2/19
- Bài viết
- 38
- Được thích
- 12
Chào Anh Chị GPEX, giúp đỡ em công thức tính chuyên cần theo điều kiện với ạ. Em đính kèm file.
Cảm ơn Anh chị nhiều./
=IF(AND(IF(B13<=1;500000;IF(B13<=2;400000;IF(B13<=3;250000;IF(B13>4;0;0)))));IF(C13<1;500000;IF(C13<2;250000;IF(C13>2;0;0)))) |
Dạ, sao e thấy dòng 9 nghỉ cp 3 ngày vẫn hiện số được tính 500.000, trong khi điều kiện là "nghỉ từ 2 đến 3 ngày cp trừ 250.000"bác thử xem ạ
=IF(AND(IF(B13<=1;500000;IF(B13<=2;400000;IF(B13<=3;250000;IF(B13>4;0;0)))));IF(C13<1;500000;IF(C13<2;250000;IF(C13>2;0;0))))
Trường hợp nghỉ 0.5 ngày không phép, trừ bao nhiêu?Dạ, sao e thấy dòng 9 nghỉ cp 3 ngày vẫn hiện số được tính 500.000, trong khi điều kiện là "nghỉ từ 2 đến 3 ngày cp trừ 250.000"
À. Em hiểu ý bác rồi. Ý bác là cột D là tổng số tiền bị trừ. Em lại hiểu là có 500k thưởng. Ai nghỉ là bị trừ. Bác coppy công thức này vào D4 rồi kéo xuống nhéDạ, sao e thấy dòng 9 nghỉ cp 3 ngày vẫn hiện số được tính 500.000, trong khi điều kiện là "nghỉ từ 2 đến 3 ngày cp trừ 250.000"
Dạ, em bổ sung, là nghỉ dưới 1 ngày kp trừ 100.000Trường hợp nghỉ 0.5 ngày không phép, trừ bao nhiêu?
Bác nghĩ như ban đầu là đúng ạ, 500k thưởng, nghỉ như điều kiện trên thì bị trừ dần số tiền 500k ạÀ. Em hiểu ý bác rồi. Ý bác là cột D là tổng số tiền bị trừ. Em lại hiểu là có 500k thưởng. Ai nghỉ là bị trừ. Bác coppy công thức này vào D4 rồi kéo xuống nhé
Bài đã được tự động gộp:
=IF(AND(IF(B4<=1;500000;IF(B4<=2;-100000;IF(B4<=3;-250000;IF(B4>4;-500000;0)))));IF(C4<1;500000;IF(C4<2;-250000;IF(C13>2;-500000;0))))
Dạ, em bổ sung, là nghỉ dưới 1 ngày kp trừ 100.000
Dạ,hihi, ra đúng số rồi, Cảm ơn bác nhiều ạ!Thử công thức này trong B4:
=IF(A4="","",MAX(0,500000-INDEX({0,100000,250000,500000},MATCH(B4,{0,1,2},1))-INDEX({0,100000,250000,500000},MATCH(C4,{0,0.5,1,2},1))))
Công thức đó sai rồi, mới cập nhật lại bài #7.Dạ,hihi, ra đúng số rồi, Cảm ơn bác nhiều ạ!
Lâu quá! quậy bạn hiền một cái coi!Công thức đó sai rồi, mới cập nhật lại bài #7.
D4=MAX(500000-SUM(CHOOSE(MATCH(B4:C4,{0;0.1;1;2;3}),,{0,10},{10,25},{25,50},50)*10^4),)*(A4>0)
Còn nhiều nhiệt huyết lắm. Nên mới có cái tà đạo này:Dạo này thiếu 'tri âm' hay sao mà bài giải mất đi lửa 'nhiệt huyết' hử bạn hiền!?Mã:D4=MAX(500000-SUM(CHOOSE(MATCH(B4:C4,{0;0.1;1;2;3}),,{0,10},{10,25},{25,50},50)*10^4),)*(A4>0)
=(50-LOOKUP(MAX(0,B4-0.9)+C4,{0,0.01,1,2},{0,10,25,50}))*10^4*(A4<>"")
Khà khà khà! Thôi bỏ đi.Còn nhiều nhiệt huyết lắm. Nên mới có cái tà đạo này:
Mã:=(50-LOOKUP(MAX(0,B4-0.9)+C4,{0,0.01,1,2},{0,10,25,50}))*10^4*(A4<>"")
Nhìn bằng mất thường cũng thấy ngắn hơn không ít.
Cách làm độc và lạ mới có giá trị, như lan đột biến, đồ lạ ai cũng thích.Khà khà khàLập 1 cái bảng dò, sử dụng 2 VLOOKUP, đơn giản, dễ hiểu.![]()
Xin lỗi thớt cho anh em tụi tui vui tí nha! nhân dịp lễ nhiều ngày, cho nên tạo "thêm rắc rối" để anh em xả "xì trét", mượn chủ đề của bạn làm ' chiến trường' cho anh em được dịp vác 'mã' "chém chém chém..." nhau.Dạ, em cảm ơn các bác đã hỗ trợ./ chúc nghỉ lễ vui vẻ!
Đính kèm thêm file để bạn mình cùng anh em dễ hình dung hơn.Giờ đố bạn mình nè: có còn công thức nào giống cách ra kết quả như hàm CHOOSE(...) ở trên không? Tức ra kết quả là 1 mảng 1 chiều.
Làm 2 cột thì được nhưng dùng thêm hàm Sum thì sai bét, không hiểu tại saoXin lỗi thớt cho anh em tụi tui vui tí nha! nhân dịp lễ nhiều ngày, cho nên tạo "thêm rắc rối" để anh em xả "xì trét", mượn chủ đề của bạn làm ' chiến trường' cho anh em được dịp vác 'mã' "chém chém chém..." nhau.
Như bài #15 có ghi:
Đính kèm thêm file để bạn mình cùng anh em dễ hình dung hơn.
Chúc anh em nghỉ lễ vui khỏe cùng gia đình.
Riêng mình ngậm ngùi phải đi mần! Hic hic![]()
K4:L4 =INDEX({0,10,25,50,50},,MATCH(B4:C4,{0,0.1,1,2,3})-{1,0})
M4 =SUM(INDEX({0,10,25,50,50},,MATCH(B4:C4,{0,0.1,1,2,3})-{1,0}))
G4 =MAX(5-SUM({0;1;2.5;5;5}*(MATCH(B4:C4,{0,0.1,1,2,3})-{1,0}=ROW($1:$5))),0)*10^5
Anh đang đi đúng hướng 1/3 đọan đường.Làm 2 cột thì được nhưng dùng thêm hàm Sum thì sai bét, không hiểu tại saoKết quả chuẩnMã:K4:L4 =INDEX({0,10,25,50,50},,MATCH(B4:C4,{0,0.1,1,2,3})-{1,0})
kết quả trớt quớtMakefile:M4 =SUM(INDEX({0,10,25,50,50},,MATCH(B4:C4,{0,0.1,1,2,3})-{1,0}))
Dùng cách khác, đổi dòng thành cột và cột thành dòng lung tung mới ra kết quảMã:G4 =MAX(5-SUM({0;1;2.5;5;5}*(MATCH(B4:C4,{0,0.1,1,2,3})-{1,0}=ROW($1:$5))),0)*10^5
View attachment 257874
Chào anh @HieuCD,Làm 2 cột thì được nhưng dùng thêm hàm Sum thì sai bét, không hiểu tại saoKết quả chuẩnMã:K4:L4 =INDEX({0,10,25,50,50},,MATCH(B4:C4,{0,0.1,1,2,3})-{1,0})
kết quả trớt quớtMakefile:M4 =SUM(INDEX({0,10,25,50,50},,MATCH(B4:C4,{0,0.1,1,2,3})-{1,0}))
Dùng cách khác, đổi dòng thành cột và cột thành dòng lung tung mới ra kết quảMã:G4 =MAX(5-SUM({0;1;2.5;5;5}*(MATCH(B4:C4,{0,0.1,1,2,3})-{1,0}=ROW($1:$5))),0)*10^5
View attachment 257874
M4=MAX(50-SUM(INDEX({0,10,25,50,50},,N(IF({1},MATCH(B4:C4,{0,0.1,1,2,3})-{1,0})))),)*10^4*(A4>0)
M4=MAX((50-SUM(INDEX({0,0;0,10;10,25;25,50;50,50},N(IF({1},MATCH(B4:C4,{0;0.1;1;2;3}))),N(IF({1},{1,2})))))*10^4,)*(A4>0)
Nhớ ngày trước bốn anh em mình quậy tưng quá vuiChào anh @HieuCD,
Phần 1: Vài tâm sự gửi người vừa là "người anh" mà cũng là "bạn hiền".
Thời gian bây giờ sao hiếm quá anh ơi! đến giờ này mới thảnh thơi để hồi đáp được cho anh, ui chao! làm nhớ lại ngày xưa lúc anh em mình còn "ba vá muỗm vùa" "ngụp lặn trên dòng sông công thức mảng", hễ có người ghi là tích tắc có hồi đáp rồi, anh em 'chập chững' tìm hiểu về mảng cùng chia sẻ những điều mới mẻ lượm lặt được, nghiền ngẫm, rồi đố nhau, 'choảng' nhau, cùng nhau hễ hả vui đùa....Lúc đó, mỗi anh em một tính cách nhưng lại hợp ý nhau, em thích tính tình bộc trực thằng thắn của em trai "Thanh tra" @befaint, sự khiêm nhu điềm đạm tinh tường của anh, và tư duy sắc bén nhanh nhạy kỳ tài của @leoheocon ( @eke_rula/ @excel_lv1.5 )... Bây giờ, như người tha hương lâu về thăm cố hương, nhìn thấy anh tham gia giải bài như một người thầy tận tụy châm ngọn đèn dầu để thắp sáng cho lớp đàn em, mặc cho thế sự đảo điên, vàng thau lẫn lộn, người - ngợm ở chung, anh vẫn chăm chút cho ra bài giải chất lượng dù đang trong một xã hội trọng số lượng khinh chất lượng, hám thành tích vượt chỉ tiêu để dành cái danh hiệu ảo, một xã hội mà ra đường đâu cũng gặp thạc sĩ tiến sĩ, nhưng lại xuống cấp đạo đức chỉ cần 1 cú va quẹt nhẹ cũng có thể giết chết người, một xã hội nhan nhản người ích kỷ, tị hiềm ganh ghét người khác chỉ vì một cái nhìn, một câu nói, một cái túi xách hàng hiệu, một cái xe đời mới... một xã hội mà có người vừa có được chút ít thành tựu đã tự cho mình có cái quyền xỉ vã mắng nhiếc người khác "khùng" "đầu óc tối tăm"..v.v.
Anh như "Ông lão chèo đò" của cố nghệ sĩ Viễn Châu miêu tả: "...Thân già gạo chợ nước sông, khỏe thì đưa khách mệt nằm xả hơi, sang giàu mặc kẻ đua bơi, công danh sự nghiệp như bèo trôi giữa dòng...ai dại ai khôn gẫm lại cũng không bằng đời của lão..", cứ vô tư luôn mãi anh nha!
Phần 2: Về công thức của anh gửi
1/ Thắc mắc "Ngộ quá" của anh là do: khi anh tạo công thức cho cùng lúc cột K và L, anh đã báo cho nó biết anh cần xử lý trên mảng 2 cột, nên nó lấy đúng. Đến khi anh gom lại vào 1 ô thì nó chỉ lấy giá trị cột đầu tiên. Do vậy để hiện đầy đủ mảng của nó, anh phải dùng thêm thủ thuật: N(If({1},....)), như sau:
Ctrl+Shift+Enter.Mã:M4=MAX(50-SUM(INDEX({0,10,25,50,50},,N(IF({1},MATCH(B4:C4,{0,0.1,1,2,3})-{1,0})))),)*10^4*(A4>0)
Do đang lúc làm việc thoạt nhìn, thì cho là công thức trên của anh đi 1/3. Bây giờ, thì tìm được vấn đề mới thấy công thức anh hoàn hảo hơn.
Công thức của em như sau:
Ctrl+Shift+Enter.Mã:M4=MAX((50-SUM(INDEX({0,0;0,10;10,25;25,50;50,50},N(IF({1},MATCH(B4:C4,{0;0.1;1;2;3}))),N(IF({1},{1,2})))))*10^4,)*(A4>0)
Tuy nhiên, có những ứng dụng lý thú khác với công thức này, anh xem thử sheet "PhatTrienY"
2/ Khi nhìn kỹ lại công thức sau cùng của anh, cũng như nhiều lần trước đây đã thầm phục, anh thật sự là "bậc thầy" nên rất tinh tường nhạy bén về quy luật diễn tiến số, phát hiện và đưa ra giải pháp "Lùi 1 bước, tiến thẳng về đích". Khà khà khà! thật tình bái phục anh.
Chúc anh có ngày nghỉ lễ tràn đầy niềm vui và an bình bên gia đình.
![]()