hàm đếm với vùng dữ liệu chứa lỗi #N/A

Liên hệ QC

thuhacoi

Thành viên mới
Tham gia
9/4/09
Bài viết
36
Được thích
3
Cả nhà giúp em sử dụng hàm SUMPRODUCT để đếm thỏa mãn 2 điều kiện nằm trong vùng chữa lỗi #N/A, rỗng...
Em xin tải file đính kèm. Rất mong được mọi người giúp đỡ
 

File đính kèm

Bạn thử dùng hàm mảng sau có đươc không nhé!(nhấn Ctrl+Shift+Enter)
=SUM(IF(ISERROR(B2:B18),0,IF(B2:B18="BV",IF(C2:C18 =25,1,0),0)))

Cảm ơn anh, em cũng đã thử rồi nhưng kết quả = 0, đây là em chỉ lấy ví dụ như thế thôi thì anh mới dùng B2:B18="BV" được, chứ bảng này rất dài và mã cũng nhiều nếu dùng công thức trên mà kéo xuống thì công thực hiện được, do mỗi dòng lại phải sửa ký tự tìm kiếm "BV".
Rất mong anh xem lại giúp em, vì em cũng thử tìm nhiếu cách rồi mà không được.
 

=SUM(IF(ISERROR(B2:B18),0,IF(B2:B18="BV",IF(C2:C18 =25,1,0),0)))

Cảm ơn anh, em cũng đã thử rồi nhưng kết quả = 0,
Sao kết quả lại =0? bằng 3 chứ. bạn có nhấn Ctrl+Shift+Enter không???
đây là em chỉ lấy ví dụ như thế thôi thì anh mới dùng B2:B18="BV" được, chứ bảng này rất dài và mã cũng nhiều nếu dùng công thức trên mà kéo xuống thì công thực hiện được, do mỗi dòng lại phải sửa ký tự tìm kiếm "BV".
Rất mong anh xem lại giúp em, vì em cũng thử tìm nhiếu cách rồi mà không được.
Bạn gửi file gốc của bạn lên đi, ghi rõ yêu cầu. còn bài trên là mình làm theo yêu cầu bài #1 của bạn mà.
 
Bạn xem trong file đính kèm nhé!
công thức dài, các bác trong diễn dàn xem còn công thức nào gọn hơn không nhé!
 

File đính kèm

Bạn xem trong file đính kèm nhé!
công thức dài, các bác trong diễn dàn xem còn công thức nào gọn hơn không nhé!
Bạn thử công thức nầy xem sao. Không biết có đúng yêu cầu không
Mã:
=SUMPRODUCT(((IF(ISERROR($B$2:$B$18);0;$B$2:$B$18))=IF(ISERROR(B2);"";B2))*($C$2:$C$18=C2))
Kết thúc phím Ctrl + Shift + Enter
 
Bạn thử công thức nầy xem sao. Không biết có đúng yêu cầu không
Mã:
=SUMPRODUCT(((IF(ISERROR($B$2:$B$18);0;$B$2:$B$18))=IF(ISERROR(B2);"";B2))*($C$2:$C$18=C2))
Kết thúc phím Ctrl + Shift + Enter
Công thức của bạn cần thêm 1 vòng IF nữa, vì nều dùng công thức của bạn áp dụng vào trong file thì những dữ liệu chống (mã và tiền không có dữ liệu) kết quả chưa chính xác. ví dụ trong file là dữ liệu dòng 12 (stt 11).
 
Công thức của bạn cần thêm 1 vòng IF nữa, vì nều dùng công thức của bạn áp dụng vào trong file thì những dữ liệu chống (mã và tiền không có dữ liệu) kết quả chưa chính xác. ví dụ trong file là dữ liệu dòng 12 (stt 11).

thường tìm BV 25 ,vvv, ai lại tìm cho #VALUE hay trồng làm gì đâu, nên CT ngắn gọn sau là đủ
=SUM((IF(ISERROR($B$2:$B$18),0,$B$2:$B$18)=B3)*($C$2:$C$18=C3))
^shift+enter
 
Bạn thử công thức nầy xem sao. Không biết có đúng yêu cầu không
Mã:
=SUMPRODUCT(((IF(ISERROR($B$2:$B$18);0;$B$2:$B$18))=IF(ISERROR(B2);"";B2))*($C$2:$C$18=C2))
Kết thúc phím Ctrl + Shift + Enter
Công thức lỗi rồi bạn.
phải vầy nè:
=IF(ISERROR(B2),"",SUMPRODUCT((IF(ISERROR($B$2:$B$34),0,$B$2:$B$34)=B2)*($C$2:$C$34=C2)))
Kết thúc bằng Ctrl-Shift-Enter
 
Công thức lỗi rồi bạn.
phải vầy nè:
=IF(ISERROR(B2),"",SUMPRODUCT((IF(ISERROR($B$2:$B$34),0,$B$2:$B$34)=B2)*($C$2:$C$34=C2)))
Kết thúc bằng Ctrl-Shift-Enter
Mình tổng hợp các công thức lại nè thây có công thức bạn Hoangminhtien là ok mà hơi dài, mà công thức bebo cũng giống mình mà phải nghiên cứu tiếp mới được
 

File đính kèm

thường tìm BV 25 ,vvv, ai lại tìm cho #VALUE hay trồng làm gì đâu, nên CT ngắn gọn sau là đủ
=SUM((IF(ISERROR($B$2:$B$18),0,$B$2:$B$18)=B3)*($C$2:$C$18=C3))
^shift+enter

Vấn đề là ở chỗ #VALE, trống... đấy, chứ còn nếu không thì sử dụng hàm SUMPRODUCT đơn giản hơn công thức của bạn nhiều.
 
Mình tổng hợp các công thức lại nè thây có công thức bạn Hoangminhtien là ok mà hơi dài, mà công thức bebo cũng giống mình mà phải nghiên cứu tiếp mới được
Công thức của bạn hoangminhtien:
=IF(ISERROR(IF(B2="",0,SUM(IF(ISERROR($B$2:$B$18),0,IF($B$2:$B$18=B2,IF($C$2:$C$18=C2,1,0),0))))),0,IF(B2="",0,SUM(IF(ISERROR($B$2:$B$18),0,IF($B$2:$B$18=B2,IF($C$2:$C$18=C2,1,0),0)))))
Dài là vì bạn ấy tính ra kq, nếu error thì cho bằng 0; tức là công thức chính lặp lại 2 lần, trong đó 1 lần nằm trong bẫy lỗi
Tức là : IF(ISERROR(công thức chính),0,công thức chính)
Tuy nhiên, chỉ cần kiểm tra mã trước, nếu error thì cho = " " luôn; như công thức của mình.
=IF(ISERROR(B2),"",SUMPRODUCT((IF(ISERROR($B$2:$B$34),0,$B$2:$B$34)=B2)*($C$2:$C$34=C2)))
Mặt khác, tác gỉ yêu cầu dùng sumproduct mà!!!
 
thường tìm BV 25 ,vvv, ai lại tìm cho #VALUE hay trồng làm gì đâu, nên CT ngắn gọn sau là đủ
=SUM((IF(ISERROR($B$2:$B$18),0,$B$2:$B$18)=B3)*($C$2:$C$18=C3))
^shift+enter
Cảm ơn bạn, Vấn đề là ở chỗ #VALE, #N/A, rỗng... đấy, chứ còn nếu không thì sử dụng hàm SUMPRODUCT đơn giản hơn công thức của bạn nhiều
 
Bổ sung thêm một chút, để loại những ô trống:
=IF(OR(ISERROR(B2),ISBLANK(B2)),0,SUMPRODUCT((IF(ISERROR($B$2:$B$18),0,$B$2:$B$18)=B2)*($C$2:$C$18=C2)))
kết qủa tuyệt cú mèo luôn.
 
Cảm ơn bạn, Vấn đề là ở chỗ #VALE, #N/A, rỗng... đấy, chứ còn nếu không thì sử dụng hàm SUMPRODUCT đơn giản hơn công thức của bạn nhiều
Cho thếm 1 công thức để vui nhà vui cửa luôn nè
Mã:
=IF(OR(TYPE(B2)=1;TYPE(B2)=16);"";SUMPRODUCT((IF(ISERROR($B$2:$B$18);0;$B$2:$B$18)=B2)*($C$2:$C$18=C2)))
Bản chất type giống Isblank, Iserror vậy đó
 

File đính kèm

Web KT

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

Back
Top Bottom