Tính tổng theo nhiều điều kiện ? (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

Hoàng Nhật Phương

Thành viên gắn bó
Tham gia
5/11/15
Bài viết
1,895
Được thích
1,219
Xin chào các bạn,
nhờ các bạn giúp đỡ tôi trường hợp trong tập tin gửi kèm với ạ.
 

File đính kèm

File đính kèm

Lần chỉnh sửa cuối:
Xin chào các bạn,
nhờ các bạn giúp đỡ tôi trường hợp trong tập tin gửi kèm với ạ.
Công thức tại C17:
Mã:
=SUMIFS($C$10:$AF$10,C9:AF9,">="&C9- WEEKDAY(C9) +1,C9:AF9,"<"&C9- WEEKDAY(C9) +8)
Đó là công thức cho tuần 1.
Với tuần thứ 2 thì thay +1 thành +7, thay +8 thành +15
Với tuần thứ 3 thì thay +1 thành +15, thay +8 thành +22
Với tuần thứ 4 thì thay +1 thành +22, thay +8 thành +29
Với tuần thứ 5 thì thay +1 thành +29, thay +8 thành +36
Tương tự vậy sẽ dùng COUNTIFS để đếm
 
Xin chào các bạn,
Nhờ các bạn giúp đỡ trường hợp tính tổng trong file đính kèm với ạ.
 

File đính kèm

P11=SUM(P$5:p10)-SUMIF($E$5:$E10,$E11,P$5:p10)*2
copy cho các ô còn laị

Cảm ơn HieuCD đã nhiều lần hỗ trợ,
Cách rất đơn giản và dễ dùng.
----
Nhân đây bạn có thể giúp OT
Sử dụng vba để điền các hàm sum theo file kèm OT gửi được không ạ, chỉ là để tham khảo thêm sau này khi cần để áp dụng cho vấn đề tương tự ạ.
 

File đính kèm

Cảm ơn HieuCD đã nhiều lần hỗ trợ,
Cách rất đơn giản và dễ dùng.
----
Nhân đây bạn có thể giúp OT
Sử dụng vba để điền các hàm sum theo file kèm OT gửi được không ạ, chỉ là để tham khảo thêm sau này khi cần để áp dụng cho vấn đề tương tự ạ.
Dựa vào 3 ký tự cuối của "tổng cộng:"
Mã:
Sub GPE()
  Dim i As Long, fRow As Long, eRow As Long
  Const sCol = 12
  eRow = Range("E" & Rows.Count).End(xlUp).Row
  If eRow < 6 Then Exit Sub
  fRow = 5
  For i = 6 To eRow
    If InStr(1, Cells(i, "E").Value, "ng:") = 8 Then
      Range("P" & i).FormulaR1C1 = "=SUM(R" & fRow & "C:R" & i - 1 & "C)"
      Range("P" & i).AutoFill Destination:=Range("P" & i).Resize(, sCol), Type:=xlFillDefault
      fRow = i + 1
    End If
  Next i
End Sub
 
Xin chào các bạn,
Nhờ các bạn giúp đỡ OT tính tổng theo điều kiện trong bảng 1 dựa vào số liệu cho sẵn ở Bảng 2 với ạ.
Chi tiết OT xin phép nêu trong tập tin gửi kèm ạ.
 

File đính kèm

Đọc bài chị chưa hiểu chị muốn gì luôn
Xin chào huonglien1901,
Cảm ơn bạn đã quan tâm, híc thực sự OT cũng không biết giải thích trường hợp này thế nào luôn bạn ạ.. chỉ biết là OT đang phải sum theo điều kiện từng đoạn như vậy :(
 
Lần chỉnh sửa cuối:

File đính kèm

Bác SA_DQ, ,bài này con muốn tham khảo cách làm bằng công thức Bác ạ, không sử dụng vba ạ.
Nếu muốn xài công thức thì mình cho rằng dữ liệu bên bảng 1 cần lắp đầy các cột trước cột mã SF
 
Lần chỉnh sửa cuối:
Phiền anh có thể tạo giúp OT cách sử dụng pivot được không ạ.

:) Cái vụ Pivot này làm sao anh xiềng như các anh em trên diễn đàn này. Nhưng chẳng lẽ anh nghĩ sai, đơn giản hoá bài toán của em?
Em chỉ cần nhóm các MaSP theo 2 điều kiện: cùng [Ngày] và cùng [MaSP] đúng không?

223657
 

File đính kèm

:) Cái vụ Pivot này làm sao anh xiềng như các anh em trên diễn đàn này. Nhưng chẳng lẽ anh nghĩ sai, đơn giản hoá bài toán của em?
Em chỉ cần nhóm các MaSP theo 2 điều kiện: cùng [Ngày] và cùng [MaSP] đúng không?

View attachment 223657
Xin chào ongke0711
Dạ cùng MaSP nhưng liên tiếp giống nhau như Bảng 1 đó Anh.
Hihi.. cảm ơn Anh đã gợi ý cho OT tham khảo cách sử dụng Pivot ạ.
Bài đã được tự động gộp:

Nếu muốn xài công thức thì mình cho rằng dữ liệu bên bảng 1 cần lắp đầy các cột trước cột mã SF
Dạ,giả sử cột E hoặc E ở bảng 1 được lắp đầy các ô như bảng 2 thì công thức như thế nào vậy Bác.
Nhờ Bác chỉ dẫn thêm một cách để con tham khảo ạ.
 
OT Cài Excel Tiếng Việt về, việc mà OT cần sẽ giảm đi 90%, hỏi sẽ phải mang theo cái "ơn" rất là lớn. "Nợ ơn thật là khó đền đáp".
1000 bài viết chắc OT sẽ phải "nợ ơn" 300 bài.

Trên diễn đàn có "cô kia" cổ tạo 6 7 tài khoản Excel, chia ra để hỏi, để nhận được câu trả lời. Tôi cũng mong cô kia tải Excel Tiếng Việt về sử dụng.
 
Lần chỉnh sửa cuối:
Trên diễn đàn có "cô kia" cổ tạo 6 7 tài khoản Excel, chia ra để hỏi, để nhận được câu trả lời. Tôi cũng mông cô kia tải Excel Tiếng Việt về sử dụng.
Thế mà "cô kia" có lúc nói là các câu hỏi như nhau nhưng là những người khác nhau ngồi cùng bàn, cùng làm bài do cô giáo ra đề. :D

Mà từ đâu bạn có thông tin là OT không có 7 tài khoản? Nhiều người "láu cá" lắm chứ không chỉ "cô kia" đâu. :D
 
giả sử cột E hoặc E ở bảng 1 được lắp đầy các ô như bảng 2 thì công thức như thế nào vậy Bác. Nhờ Bác chỉ dẫn thêm một cách để con tham khảo ạ.
Thì dịch ngôn ngữ VBA sang tiếng Việt thì sẽ thấy cách làm với hàm DSUM() mà. Vì là hàm CSDL nên nó iêu cầu dữ liệu phải là CSDL
PHP:
Sub TinhSanLuongTheoCa()
 Dim WF As Object, CSDL As Range, Cls As Range
 Dim Rws As Long, Ngay As Date
 Dim Ca As String, MaSF As String
 
 Set WF = Application.WorksheetFunction
 [S1].Value = [A4].Value:                           [T1].Value = [P4].Value
 [U1].Value = [K4].Value
 Rws = [Q65500].End(xlUp).Row
 Set CSDL = Range("K4:Q" & Rws)
 For Each Cls In Range([D6], [D65500].End(xlUp))
    MaSF = Cls.Value
    If MaSF <> "" Then
        If Cls.Offset(, -3).Value <> "" Then Ngay = Cls.Offset(, -3).Value
        If Cls.Offset(, -2).Value <> "" Then Ca = Cls.Offset(, -2).Value
        [S2].Value = Ngay:                              [T2].Value = Ca
        [U2].Value = MaSF
        Cells(Cls.Row, "G").Value = WF.DSum(CSDL, [L4], [S1:U2])
    End If
 Next Cls
End Sub
 
Thì cứ coi như là loại thuộc bổ, không bề ngang thì cũng bổ bè dọc mà!
Với lại mình đã lưu ý là "thực phẩm chức năng", không dùng để trị bệnh được, Kha, kha,. . . .
 
Chỉ sợ chỗ cần bổ thì nó không bổ cho, mà chỉ bổ những chỗ mình không mong muốn.

Chẳng hạn nó cứ bổ thật mạnh vòng 2 thì ........... chết. :D
 
Cái chuyện 'bổ thật mạnh vòng 2 thì' đã có bà BT K. Tiến 'no'
Với lại từ 'chết' mà bạn xài cũng tùy từng trường hợp, mà ta thêm các từ đệm như 'sướng', 'cười',. . . . thì nghĩa sẽ ngược với chết chốc

Chúc bạn tuần làm việc vui vẻ & hiệu quả.
 

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

Back
Top Bottom