Tìm tổng 3 ngày, 5 ngày liên tiếp lớn nhất

Liên hệ QC

lexuanhienkttv

Thành viên chính thức
Tham gia
15/8/11
Bài viết
80
Được thích
6
Xin chào các anh, chị. Em có 1 bảng số liệu lượng mưa các ngày trong năm, em muốn tìm ra tổng của 3 ngày, 5 ngày, 7 ngày liên tiếp có tổng lượng mưa lớn nhất trong năm. Nhờ các anh chị hỗ trợ giúp em công thức để tìm các giá trị đó mà không phải mò thủ công. Cảm ơn các anh chị.
 

File đính kèm

Xin chào các anh, chị. Em có 1 bảng số liệu lượng mưa các ngày trong năm, em muốn tìm ra tổng của 3 ngày, 5 ngày, 7 ngày liên tiếp có tổng lượng mưa lớn nhất trong năm. Nhờ các anh chị hỗ trợ giúp em công thức để tìm các giá trị đó mà không phải mò thủ công. Cảm ơn các anh chị.
Kết quả mong muốn của bạn thể hiện thế nào trong file và diễn giải cách tính thủ công cụ thể xem sao nhé.
 
Dùng cột phụ C
C1 = 3
C2 =SUM(OFFSET(B2,,,$C$1,1))
D5 =C1&" days max"
E5 là ngày bắt đầu của chuỗi 3 ngày
E5 =INDEX(A2:A100,MATCH(MAX(C2:C100),C2:C100,0),1)

Sửa C1 thành 5 hoặc 7 sẽ có kết quả tương ứng

Nếu chỉ cần lấy Max: thì lấy MAX(C2:C100)
 
Xin chào các anh, chị. Em có 1 bảng số liệu lượng mưa các ngày trong năm, em muốn tìm ra tổng của 3 ngày, 5 ngày, 7 ngày liên tiếp có tổng lượng mưa lớn nhất trong năm. Nhờ các anh chị hỗ trợ giúp em công thức để tìm các giá trị đó mà không phải mò thủ công. Cảm ơn các anh chị.
Không hiểu ý bạn lắm, bạn thử công thức này
D3=MAX(IF(SUBTOTAL(2,OFFSET($B$1,ROW($B$2:$B$366)-2,0,--LEFT(C3),1))=--LEFT(C3),SUBTOTAL(109,OFFSET($B$1,ROW($B$2:$B$366)-2,0,--LEFT(C3),1)),"")), nhấn Ctrl+shift+enter
Ra kết quả là 348,4 và 405.4 và 478,2
Nếu không đúng thì mình cũng chịu, nhờ các bác khác giúp bạn.
 
Hơi thủ công tí nhưng dễ hiểu
=MAX(INDEX(B2:B364+B3:B365+B4:B366,))
=MAX(INDEX(B2:B362+B3:B363+B4:B364+B5:B365+B6:B366,))
=MAX(INDEX(B2:B360+B3:B361+B4:B362+B5:B363+B6:B364+B7:B365+B8:B366,))
 

File đính kèm

Cảm ơn các anh, đúng công thức em đang cần (longtay1111, bebo021999). Mục đích của em là chọn ra 3 ngày liên tiếp bất kỳ có tổng lượng mưa lớn nhất năm, tương tự như vậy với 5 ngày và 7 ngày.
 
Lần chỉnh sửa cuối:
Dùng cột phụ C
C1 = 3
C2 =SUM(OFFSET(B2,,,$C$1,1))
D5 =C1&" days max"
E5 là ngày bắt đầu của chuỗi 3 ngày
E5 =INDEX(A2:A100,MATCH(MAX(C2:C100),C2:C100,0),1)

Sửa C1 thành 5 hoặc 7 sẽ có kết quả tương ứng

Nếu chỉ cần lấy Max: thì lấy MAX(C2:C100)
Ngoài lề 1 chút, nhưng bác Mỹ cho em hỏi tí:
Việc sử dụng cột phụ, so với việc viết 1 công thức duy nhất, cách nào sẽ tối ưu hơn? Lấy ví dụ luôn ở yêu cầu bài này đi ạ.
 
Ngoài lề 1 chút, nhưng bác Mỹ cho em hỏi tí:
Việc sử dụng cột phụ, so với việc viết 1 công thức duy nhất, cách nào sẽ tối ưu hơn? Lấy ví dụ luôn ở yêu cầu bài này đi ạ.
Nếu chỉ cần 1 kết quả (như là 3) thì có cột phụ sẽ nặng hơn là không dùng cột phụ. Đó là trường hợp bài này. Tuy nhiên tôi vẫn chỉ cho cách làm đơn giản nhất mà ai cũng có thể nghĩ ra, thay vì dùng 1 công thức mà có khi chẳng hiểu nó hoạt động thế nào.
Tuy nhiên đối với cột phụ 365 ô thì cái việc nặng đó cũng không đáng kể.
Còn nếu cần 2, 3 kết quả (3, 5, 7) thì chả lẽ dùng 3 cột phụ.
 
Xin chào các anh, chị. Em có 1 bảng số liệu lượng mưa các ngày trong năm, em muốn tìm ra tổng của 3 ngày, 5 ngày, 7 ngày liên tiếp có tổng lượng mưa lớn nhất trong năm. Nhờ các anh chị hỗ trợ giúp em công thức để tìm các giá trị đó mà không phải mò thủ công. Cảm ơn các anh chị.
3 ngày liên tiếp
Mã:
=AGGREGATE(14,6,SUMIF(OFFSET($B$1,ROW($1:$365),,3),">0"),1)
Chỉnh số 3 thành 5 hoặc 7 để tính 5, 7 ngày liên tiếp
 
3 ngày liên tiếp
Mã:
=AGGREGATE(14,6,SUMIF(OFFSET($B$1,ROW($1:$365),,3),">0"),1)
Chỉnh số 3 thành 5 hoặc 7 để tính 5, 7 ngày liên tiếp
Nhờ anh giải thích công thức giúp em, em muốn dùng công thức này cho bảng nhiều cột số liệu thì làm thế nào?
Bài đã được tự động gộp:

Hơi thủ công tí nhưng dễ hiểu
=MAX(INDEX(B2:B364+B3:B365+B4:B366,))
=MAX(INDEX(B2:B362+B3:B363+B4:B364+B5:B365+B6:B366,))
=MAX(INDEX(B2:B360+B3:B361+B4:B362+B5:B363+B6:B364+B7:B365+B8:B366,))
Công thức này nếu trong bảng số liệu có ô trống, ký tự như dấu "-" hay "," thì không tìm được kết quả. Anh/chị có thể khắc phục được vấn đề này không?
 
Nhờ anh giải thích công thức giúp em, em muốn dùng công thức này cho bảng nhiều cột số liệu thì làm thế nào?
Bài đã được tự động gộp:


Công thức này nếu trong bảng số liệu có ô trống, ký tự như dấu "-" hay "," thì không tìm được kết quả. Anh/chị có thể khắc phục được vấn đề này không?
SUMIF(OFFSET($B$1,ROW($1:$365),,3),">0") Tính tổng 3 ô liên tiếp
AGGREGATE(14,6, . . . ,1) là hàm Max
Trên thanh công thức bạn dùng chuột chọn bôi từng thamh2 phần công thưac1 và nhấn phím chức năng F9 sẽ hiện kết quả của thành phần đó
Cấu trúc dữ liệu thay đổi công thức thường phải viết lại từ đầu
 
Hơi thủ công tí nhưng dễ hiểu
=MAX(INDEX(B2:B364+B3:B365+B4:B366,))
=MAX(INDEX(B2:B362+B3:B363+B4:B364+B5:B365+B6:B366,))
=MAX(INDEX(B2:B360+B3:B361+B4:B362+B5:B363+B6:B364+B7:B365+B8:B366,))
=MAX(INDEX(B2:B360+B3:B361+B4:B362+B5:B363+B6:B364+B7:B365+B8:B366,))
Em dùng hàm này cho từng tháng, sau đó chọn ra cho năm. Cảm ơn các bác
 
Web KT

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

Back
Top Bottom