Dùng hàm nào cho bài toán này : DSUM ,DMAX ,SUMPRODUCT ???

  • Thread starter Thread starter tekan
  • Ngày gửi Ngày gửi
Liên hệ QC

tekan

Thành viên mới
Tham gia
28/10/07
Bài viết
4
Được thích
0
tìm 3 ô liên tiếp trong mảng có tổng lớn nhất

Các bác chỉ giúp em với ,cái bài tập của em nó yêu cầu thế này :
CHo bảng lượng mưa trong năm, chỉ ra 3 ngày liên tiếp có tổng lượng mưa là lớn nhất ( 3 ngày cùng 1 tháng ) .


Cảm ơn các bác trước. :D
 
Dùng 2 hàm Max và If để thành lập công thức trực tiếp trên bảng tính là được. Bạn thử làm xem
 
tekan đã viết:
tìm 3 ô liên tiếp trong mảng có tổng lớn nhất

Các bác chỉ giúp em với ,cái bài tập của em nó yêu cầu thế này :
CHo bảng lượng mưa trong năm, chỉ ra 3 ngày liên tiếp có tổng lượng mưa là lớn nhất ( 3 ngày cùng 1 tháng ) .


Cảm ơn các bác trước. :D

Bạn có đặc ân là up được file lên, thế tại sao lại kg sử dụng, bạn sẽ được kết quả tốt hơn...:=\+
 
Tôi giã sử dử liệu về lượng mưa của bạn nằm từ cell A1 đến cell A100.. Bạn gõ công thức sau:
=MAX($A$1:$A$98+$A$2:$A$99+$A$3:$A$100)
Bấm Ctrl + Shift + Enter đễ kết thúc
Mến
 
Xin lỗi, tôi ko đễ ý đến điều kiện lương mưa trong cùng 1 tháng...
Tôi giã lập dử liệu trong file đính kèm: cột A là ngày tháng năm, cột B là lượng mưa.. Các cell màu vàng là kết quả, bạn muốn tính max lượng mưa tháng nào thì gõ vào cell F9!
Chú ý công thức trong cell G9 là công thức mãng, phải Ctrl + Shift + Enter nhé!
ANH TUẤN
 

File đính kèm

tsf đã viết:
Bạn có đặc ân là up được file lên, thế tại sao lại kg sử dụng, bạn sẽ được kết quả tốt hơn...:=\+
Lúc nãy mình vội quá nên quên mất, h up lên rồi ,mọi người xem giúp mình nhé
 

File đính kèm

Lần chỉnh sửa cuối:
Cho hỏi:
1> Tại sao bạn ko sắp xếp ngày tháng năm vào cùng 1 cột, giống file của tôi đấy, có phải là dể trích xuất dử liệu hơn ko?
2> Tại sao có ngày ko có dử liệu? Vậy 3 ngày liên tiếp theo bạn là như thế nào đây? Vd từ 20/1 đến 22/1 ko có dử liệu, vậy sẽ tính thế nào?
 
1) Bạn thông cảm ,cái bảng đó là đề bài mình được giao, mình phải tính cho mấy chục năm liền ,để ở dạng như vậy mới dễ theo dõi được ,Và phải để ở dạng bảng như vậy để còn tính số ngày có mưa trong tháng, tổng lượng mưa tháng, ngày mưa max của tháng ...
2) những ngày ko có dữ liệu tương ứng với lượng mưa = 0 mà

Mình vừa up lại nguyên cái bảng đó lên rồi,các bạn cố gắng giúp mình nhé
 
Lần chỉnh sửa cuối:
tekan đã viết:
tìm 3 ô liên tiếp trong mảng có tổng lớn nhất

Các bác chỉ giúp em với ,cái bài tập của em nó yêu cầu thế này :
CHo bảng lượng mưa trong năm, chỉ ra 3 ngày liên tiếp có tổng lượng mưa là lớn nhất ( 3 ngày cùng 1 tháng ) .


Cảm ơn các bác trước. :D

Lớn nhất trong tháng hay là trong năm vậy bạn ????
Có được dùng VBA không vậy???

Thân!
 
3 ngày cùng 1 tháng ,có tổng lớn nhất năm bạn à
 
tekan đã viết:
3 ngày cùng 1 tháng ,có tổng lớn nhất năm bạn à

Bạn tham khảo hàm BaNgay này nhé :
PHP:
Function BaNgay(Mang As Range)
    Dim DD As Integer, DC As Integer
    Dim CD As String, CC As String
    Dim i As Integer, j As Integer
    Dim LuongMua As Variant
    Dim LM1 As Variant, LM2 As Variant, LM3 As Variant
    Dim Ngay1 As Date, Ngay2 As Date, Ngay3 As Date
    DD = Mang.Row: DC = DD + Mang.Rows.Count - 1
    CD = Mang.Column: CC = CD + Mang.Columns.Count - 1
        For i = CD To CC
            For j = DD To DC - 2
                If (Cells(j, i) + Cells(j + 1, i) + Cells(j + 2, i)) > LuongMua Then
                    LuongMua = Cells(j, i) + Cells(j + 1, i) + Cells(j + 2, i)
                    LM1 = Format(Cells(j, i), "#,#00.00")
                    LM2 = Format(Cells(j + 1, i), "#,#00.00")
                    LM3 = Format(Cells(j + 2, i), "#,#00.00")
                    Ngay1 = DateSerial(2007, i - (CD - 1), j - (DD - 1))
                    Ngay2 = DateSerial(2007, i - (CD - 1), j + 1 - (DD - 1))
                    Ngay3 = DateSerial(2007, i - (CD - 1), j + 2 - (DD - 1))
        End If: Next: Next
        BaNgay = " - Ngay " & Ngay1 & ": " & LM1 & Chr(10) & " - Ngay " & Ngay2 & ": " & LM2 & Chr(10) & " - Ngay " & Ngay3 & ": " & LM3 & Chr(10) & " - Tong luong mua : " & Format(LuongMua, "#,#00.00")
End Function

Thân!
 

File đính kèm

Bài toán này cũng có thể làm bằng công thức thường, nhưng phải dùng bảng phụ...
Trong file của Bắp, dòng 36 có dùng COUNTIF... theo tôi nên dùng COUNTA thì đúng hơn... Tôi cũng ko hiểu tại sao hầu như tất cả các trường hợp, COUNTIF(Vùng,">0").. hoặc COUNTIF(Vùng,"<>""") đều ko cho kết quả như ý
ANH TUẤN
 
Thêm một tham khảo nữa = VBA

Mã:
Option Explicit [b]

Sub Max3()[/b]
 On Error Resume Next
 Dim iJ As Long, Iz As Long, lRow As Long
 Dim Temp3, StrC As String
 
 For iJ = 2 To 13
    lRow = Range(Chr(64 + iJ) & CStr(65432)).End(xlUp).Row - 6
    For Iz = 2 To lRow
        If Temp3 < Cells(Iz, iJ) + Cells(Iz + 1, iJ) + Cells(Iz + 2, iJ) Then
            Temp3 = Cells(Iz, iJ) + Cells(Iz + 1, iJ) + Cells(Iz + 2, iJ)
            StrC = Range(Cells(Iz, iJ), Cells(Iz + 2, iJ)).Address
        End If
    Next Iz
 Next iJ
 MsgBox StrC           [COLOR="Blue"]  ' $G$20:$G$22 [/COLOR][b]
End Sub [/b]
--=0
 
anhtuan1066 đã viết:
Bài toán này cũng có thể làm bằng công thức thường, nhưng phải dùng bảng phụ...
Trong file của Bắp, dòng 36 có dùng COUNTIF... theo tôi nên dùng COUNTA thì đúng hơn... Tôi cũng ko hiểu tại sao hầu như tất cả các trường hợp, COUNTIF(Vùng,">0").. hoặc COUNTIF(Vùng,"<>""") đều ko cho kết quả như ý
ANH TUẤN
Mấy công thức đó là của tekan, em không sửa vì tôn trọng thôi.
Còn em chỉ muốn giới thiệu hàm UF để tìm ra 3 ngày đó thôi.

Hàm này có thể áp dụng cho bất cứ mảng nào, không cần phải là từ B2:M32. Chỉ cần giữ nguyên Format là được (Trên là tháng, bên phải là ngày)

Thân!
 
Mấy công thức đó là của tekan, em không sửa vì tôn trọng thôi.
Vậy Bắp có thể cho biết tại sao COUNTIF như tôi nói ở trên lại ko dùng dc? Công thức vậy nhìn qua thì thấy rất hợp lý cho mà: Đếm những em nào >0.. hoặc đếm những em nào khác rổng.. Sao lại ko ra kết quả nhỉ?
 
anhtuan1066 đã viết:
Vậy Bắp có thể cho biết tại sao COUNTIF như tôi nói ở trên lại ko dùng dc? Công thức vậy nhìn qua thì thấy rất hợp lý cho mà: Đếm những em nào >0.. hoặc đếm những em nào khác rổng.. Sao lại ko ra kết quả nhỉ?

Em thấy vẫn bình thường mà. (File bên dưới)
bác xem lại xem!!

Thân!
 

File đính kèm

Trời... thì ra này giờ ko đễ ý... file cũa tác sai là do: COUNTIF(Vùng,">0.0")
Đúng ra phải là COUNTIF(Vùng,">0")
Hic...
 
Web KT

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

Back
Top Bottom