dùng hàm MATCH(20/7/2007,DS,0) ra dc vị trí của nó trong DS... dùng SUMPRODUCT đễ đếm xem có bao nhiêu phần tử từ 20/7/2007 đến 19/8/2007 (nếu mỗi ngày duy nhất 1 dòng thì lấy 19/08/2007-20/07/2007+1.. khỏi SUMPRODUCT luôn)...
MATCH(20/7/2007,DS,0) nếu trong DS không có ngày 20/07/2007 thì sao, báo N/A.
Sao không dùng:
- Countif(DS,"<"&date(2007,7,20)) +1 => DongDau có dữ liệu thỏa DK
- Countif(DS,"<"&date(2007,8,19+1)) - Countif(DS,"<"&date(2007,7,20)) =>SoDong
To Ditimdl: Lâu lắm mới gặp lại người KrongBuk, OK?
Ví dụ:bạn có
- Cột sl xuất từ ngày 01/01/yy-31/12/yy: SLXuat
- Cột ngày xuất từ ngày 01/01/yy-31/12/yy: NgayXuat (ngày tăng dần)
- Cột Mã hàng:từ ngày 01/01/yy-31/12/yy: Mahang
Thay vì bạn dùng Sumproduct((Mahang=X1)*(NgayXuat>="20/07/07")*((NgayXuat<="19/08/07")*SLXuat)
Như thế thì hơi dài và sợ chạy chậm. Vấn đề này hiện nay tôi cũng không biết nhanh hơn hay chậm hơn khi dùng Sumif.
Bạn dùng:
sumif(offset(MaHang,DongDau,0,SoDong,1),X1,offset(SLXuat,DongDau,0,SoDong,1))
offset(MaHang,DongDau,0,SoDong,1) chính là Range MaHang đã giới hạn bởi >= 20/07/yy và <= 19/08/yy
Không có file nên HD chay vậy. Hy vọng giờ bạn đã nắm bắt nhiều hơn.
Chúc thành công. AnhTuan1066 xem HD bạn ấy với nhé, bạn cũ của mình ấy.