nguyenquang28
Thành viên mới

- Tham gia
- 10/8/16
- Bài viết
- 7
- Được thích
- 4
Nếu cứ tính tổng 2 Size, công thức ở F17Em file excel đính kèm, muốn tính tổng có điều kiện. em không hình dung ra được tìm điều kiện theo mảng. mong mị người giúp em với!
=IF(C17="","",SUMPRODUCT(($A$4:$A$10=C17)*OFFSET($A$4:$A$10,,MATCH(--TRIM(LEFT(SUBSTITUTE(E17,"-",REPT(" ",LEN(E17))),2)),$B$3:$V$3,0),,2)))
Góp thêm công thức tính cho nhiều size 1 lúc:Em file excel đính kèm, muốn tính tổng có điều kiện. em không hình dung ra được tìm điều kiện theo mảng. mong mị người giúp em với!
F17=IFERROR(SUM(SUMIF($D$3:$V$3,(FIND("-"&$D$3:$V$3&"-","-"&E17&"-")>0)*$D$3:$V$3,OFFSET($D$3,MATCH(C17,$A$4:$A$10,),))),"")
F17=IFERROR(SUMPRODUCT(SUMIF($D$3:$V$3,(FIND("-"&$D$3:$V$3&"-","-"&E17&"-")>0)*$D$3:$V$3,OFFSET($D$3,MATCH(C17,$A$4:$A$10,),))),"")
Mới sửa bài lại, để chơi 1 lúc 1 dãy size luôn!Sao không tách thành 2 cột rồi dùng SUMIF cho khỏe?
Cám ơn anh nhiều ạ!Nếu cứ tính tổng 2 Size, công thức ở F17
Mã:=IF(C17="","",SUMPRODUCT(($A$4:$A$10=C17)*OFFSET($A$4:$A$10,,MATCH(--TRIM(LEFT(SUBSTITUTE(E17,"-",REPT(" ",LEN(E17))),2)),$B$3:$V$3,0),,2)))
Cám ơn anh nhiều nha!Góp thêm công thức tính cho nhiều size 1 lúc:
Hoặc:
Kết thúc bằng Ctrl+Shift+Enter.Mã:F17=IFERROR(SUM(SUMIF($D$3:$V$3,(FIND("-"&$D$3:$V$3&"-","-"&E17&"-")>0)*$D$3:$V$3,OFFSET($D$3,MATCH(C17,$A$4:$A$10,),))),"")
Hoặc:
Chỉ Enter.Mã:F17=IFERROR(SUMPRODUCT(SUMIF($D$3:$V$3,(FIND("-"&$D$3:$V$3&"-","-"&E17&"-")>0)*$D$3:$V$3,OFFSET($D$3,MATCH(C17,$A$4:$A$10,),))),"")
Thân
Hai cột là 3 với 3.5 riêng phải không anh?Sao không tách thành 2 cột rồi dùng SUMIF cho khỏe?
"(FIND("-"&$D$3:$V$3&"-","-"&E17&"-")>0)*$D$3:$V$3" Anh có thể giải thích giúp em đoạn này với không anh!Góp thêm công thức tính cho nhiều size 1 lúc:
Hoặc:
Kết thúc bằng Ctrl+Shift+Enter.Mã:F17=IFERROR(SUM(SUMIF($D$3:$V$3,(FIND("-"&$D$3:$V$3&"-","-"&E17&"-")>0)*$D$3:$V$3,OFFSET($D$3,MATCH(C17,$A$4:$A$10,),))),"")
Hoặc:
Chỉ Enter.Mã:F17=IFERROR(SUMPRODUCT(SUMIF($D$3:$V$3,(FIND("-"&$D$3:$V$3&"-","-"&E17&"-")>0)*$D$3:$V$3,OFFSET($D$3,MATCH(C17,$A$4:$A$10,),))),"")
Thân
Đây là đoạn công thức:"(FIND("-"&$D$3:$V$3&"-","-"&E17&"-")>0)*$D$3:$V$3" Anh có thể giải thích giúp em đoạn này với không anh!
Anh giải thích rất chi tiết. Cám ơn anh một lần nữa ạ! Chúc anh và mọi người buổi tối vui vẻ!Đây là đoạn công thức:
Vừa cải tạo lại các size để tương thích:
View attachment 221434
Vừa truy lục so khớp để tạo ra 1 mảng là các size như bạn yêu cầu (được liệt kê tại vùng E17: E33) để cộng.
View attachment 221436
Thường thì ta làm là cắt trực tiếp theo "size" yêu cầu tại E17: E33, ví dụ: E17= "3-3.5-4-7.5-10", ta phải dùng hàm để cắt ra thành 1 mảng {3, 3.5, 4, 7.5, 10}, nhưng công thức sẽ dài hoặc phức tạp hơn tùy thuộc vào loại size liệt kê trong cùng 1 ô nhiều hay ít.
Công thức bạn hỏi thì "mục đích" cũng tạo ra được mảng {3, 3.5, 4, 7.5, 10} (hoặc nhiều hơn nữa) nhưng gọn gàng hơn và không sợ liệt kê loại size nhiều ít.
Trong file kèm tôi lấy công thức tại ô F17 làm ví dụ, và dẫn ra kết quả của từng phần hành chi tiết trong công thức.
Bạn xem chầm chậm các công thức từ trên xuống Vùng H13: H27 sẽ hiểu.
Thân