Bạn muốn tính tổng một phần của một hàng của một mảng, trong đó ngày nhỏ hơn hoặc bằng một giá trị được chỉ định.
Đầu tiên, hãy tìm hiểu làm thế nào để có được một hàng của mảng. Hàm INDEX ()
INDEX(array, row_num, [col_num])
sẽ trả về toàn bộ một hàng nếu col_num được đặt thành 0. Vì vậy, chức năng này
=INDEX(C9:O17,MATCH(403300,B9:B17,0),0))
trả về hàng dữ liệu của bạn trong đó Tài khoản (?) là 403300. Bạn có thể kiểm tra điều này bằng cách tô sáng công thức trong thanh công thức và nhập F9. Điều đó sẽ hiển thị giá trị của công thức - một mảng dữ liệu trong hàng 403300.
Bây giờ bạn chỉ cần thêm phần của hàng đó trong đó tháng nhỏ hơn hoặc bằng tháng được chỉ định. SUMIF()
sẽ làm điều này
SUMIF(range,criteria,[sum-range])
SUMIF () kiểm tra phạm vi được chỉ định (ngày của bạn) phù hợp với tiêu chí (<= tháng được chỉ định của bạn) và tính tổng các ô tương ứng trong sum_range (hàng được chọn với công thức INDEX () ở trên). Đặt tất cả những thứ này lại với nhau và sử dụng bảng dữ liệu giả định bên dưới, công thức này
=SUMIF(C7:O7,"<="&$E$4,INDEX(C9:O17,MATCH($D$4,B9:B17,0),0))
trong G4 đưa ra tổng số tài khoản trong D4 cho đến ngày trong E4.
Tôi đã đặt mọi thứ trên một bảng tính và không có danh sách thả xuống, nhưng bạn có thể dễ dàng thêm các tính năng này. Nếu bạn thực sự cần chỉ định bảng tính với danh sách thả xuống, bạn phải sử dụng rất nhiều INDIRECT (), điều này sẽ hơi lộn xộn. Tôi đã đưa ra cái này, trong đó tên trang tính là trong C4:
=SUMIF(INDIRECT(C4&"!"&"C7:O7"),"<="&E4,INDEX(INDIRECT(C4&"!"&"C9:O17"),MATCH(D4,INDIRECT(C4&"!"&"B9:B17"),0),0))
Tôi hy vọng điều này có thể giúp ích, chúc bạn may mắn.