Tính tổng có nhiều điều kiện

  • Thread starter topic
  • Ngày gửi
T

topic

Guest
#1
Chào các bạn ! :flower1:
Tôi đang có một tình huống nan giải nhờ các bạn trong diễn đàn chỉ giúp. Tôi có một bảng danh sách trong EXCEL trong đó mỗi người có nhiều dữ liệu cần theo dõi, nay tôi cần tính tổng số theo nhóm tức là cộng những người thỏa mãn các điều kiện đưa ra (nếu dùng hàm SUMIF thì chỉ thỏa mãn được 1 điều kiện). Bạn nào có kinh nghiệm xin chỉ giúp.
 
T

thanglong

Guest
#2
topic nói:
Chào các bạn ! :flower1:
Tôi đang có một tình huống nan giải nhờ các bạn trong diễn đàn chỉ giúp. Tôi có một bảng danh sách trong EXCEL trong đó mỗi người có nhiều dữ liệu cần theo dõi, nay tôi cần tính tổng số theo nhóm tức là cộng những người thỏa mãn các điều kiện đưa ra (nếu dùng hàm SUMIF thì chỉ thỏa mãn được 1 điều kiện). Bạn nào có kinh nghiệm xin chỉ giúp.
theo mình bạn co thể sort các nhóm có cùng diều kiện rồi cộng chúng lại, trong Excel còn có một công cụ khác là :Advanced filter... Bạn lọc chúng ra rồi sum,sumif, hoặc Dsum.
Chúc bạn thành công.
 
B

Bình_OverAC

Over Abnormal / Crazy
14/5/04
845
7
18
37
Nha Trang
#4
Hình như là nó không đơn giản như bác tranvanhung noi dau
Cái này bạn có thẻ dùng công thức mãng (muốn biết về công thức mãng vui lòng tìm lại trong các bài cũ).
Câu của bác tranvanhung làm em nảy ra một ý tưởng thay thế conditional sum hay công thức mãn là dùng thêm một cột bằng cách sau:
1. Tạo một cột nữa tạm gọi là cột điều kiện với công thức
= and(condition1, condition2...) với các condition này là các điều kiện của các cột tương ứng,
2. viêt công thức sumif
= sumif (cột điều kiện, true,cột giá trị cộng)

theo tự em thấy thì nó hơi bị hay đấy (^_^) từ đây em sẽ áp dụng cái này khỏi mất công dùng công thức mảng rối lắm mà đôi khi không thoả mản ý em.
 
H

handung107

Thành viên thân thiết
28/8/04
576
13
0
VN
www.giaiphapexcel.com
#5
Bạn hãy dùng công thức mảng.
Td : Sheet DATA có các cột: NGAY, DVKH,NOTK, COTK, S_TIEN
Tính tổng S_TIEN bên nợ TK 131 của khách hàng "KH001" hoặc "KH002" và trong thời gian từ ngày 01/09/04 đến 10/09/04.
Công thức mảng như sau :
[=SUM((DAY(Ngay)>=1)*(DAY(Ngay)<=10)*(IF((dvkh="KH001")+(dvkh="KH002"),1,0))*(NoTK=131)*S_tien)].
Các công thức mảng bao giờ cũng được kết thúc bằng Ctrl+Shift+Enter
Hoặc bạn có thể dùng công thức :
=SUMPRODUCT((DAY(Ngay)>=1)*(DAY(Ngay)<=10)*((dvkh="KH001")+(dvkh="KH002"))*(NoTK=131)*S_tien)
Công thức dưới không phải là công thức mảng nhưng cũng dùng để tính tổng nhiều điều kiện. Bạn có thể xem các bài về công thức mảng rải rác trong Excel Fan và Thủ thuật Excel, bài của Tuankctdcn phân tích về công thức mảng rất hay.
 
tranvanhung

tranvanhung

Gãi ngứa
20/2/04
2,976
9
38
15
Biên Hoà - Đồng Nai
#6
Ui, nói tới vấn đề mảng thì nói làm gì, đâu có phải ai cũng làm được đâu.

To OverAC: Làm như cậu cũng được nhưng như vậy thì cậu phải làm dạng bắc cầu rồi.
Có thể thêm như thế này cũng được (If(and(cond 1, cond 2, cond 3,...)or(cond 1, cond 2, cond 3,...)). Như thế cũng tạm ổn đấy.
 
H

handung107

Thành viên thân thiết
28/8/04
576
13
0
VN
www.giaiphapexcel.com
#7
To Over AC, tạo thêm một cột điều kiện rồi dùng hàm Sumif không phải là giải pháp tốt hơn đâu, nếu em không thích dùng công thức mảng hãy thay thế nó bằng hàm SumProduct. cấu trúc của hàm rất đơn giản :
SUMPRODUCT((TenMang1=DK1)*(TenMang2=DK2)*(TenMang3=DK3)) với các điều kiện AND. Còn các điều kiện OR thì công thức mảng trở thành :
SUMPRODUCT(((TenMang1=DK1)+(TenMang2=DK2))*(TenMang3=DK3)) (OR DK1,DK2)
Chị cũng rất thích dùng hàm SumProduct hơn công thức mảng nhiều
 
B

Bình_OverAC

Over Abnormal / Crazy
14/5/04
845
7
18
37
Nha Trang
#8
Thế là em không hiểu thấu đáo về hàm sumproduct rồi.

Em thử ví dụ của chị handung rồi. Quá hay. Nói thật là từ trước tới giờ có bao giờ em dùng hàm sumproduct đâu (mặc dù có biết qua về nó). Bây giờ mới biết nó thật tuyệt



Cám ơn chị handung nhiều
 
Sửa lần cuối:
deepblue

deepblue

Thành viên sơ cấp
22/7/04
183
1
0
40
Mù Cang Chải
#9
Đã bạn nào dùng thử hàm Dsum chưa, tôi nghĩ là nó có thể giải quyết được đây
 
Q

quocnghia

Thành viên sơ cấp
24/3/04
64
0
0
#10
Có cách nào khác nữa không các bạn.
 
T

Tuanktcdcn

Lão già ham vui
18/6/04
548
51
28
41
Hà Nội
www.bluesofts.net
#11
Tính tổng có điều kiện

Bạn có thể có nhiều cách như:
DSUM nếu bạn chỉ tính cho một cell thì ok nhưng nếu bạn cần copy công thức cho các cell khác thì DSUM không dùng được vì nó phải có thêm các criteria tương ứng.
SUMIF chỉ tính tổng theo điều kiện đơn->không phù hợp cho những sổ tổng hợp theo nhiều tiêu thức khác nhau.
SUM(IF(...,0),..),0)) là một dạng cấu trúc công thức mảng. Nếu bạn sử dụng tốt dạng này, tôi tin rằng bạn sẽ càng "ngưỡng mộ" Excel hơn, nhưng nếu không biết cách thì bạn phải cần mẫn hơn trong quá trình lọc (Filter, Advanced Filter) mà không phải đã đúng ý bạn.
Câu trả lời cuối chính xác để tính tổng có nhiều điều kiện là dùng công thức mảng.
(Trong diễn đàn đã có một số bài nói về công thức mảng-Formula Array, các bạn có thể tìm đọc thêm)
 
H

handung107

Thành viên thân thiết
28/8/04
576
13
0
VN
www.giaiphapexcel.com
#12
Nếu chỉ để tính tổng với nhiều điều kiện khác nhau, hàm SumProduct hoàn toàn có thể thay thế công thức mảng, nhưng nếu bạn muốn tìm hiểu về công thức mảng, bạn nên bắt đầu cũng từ việc "tính tổng với nhiều điều kiện khác nhau", vì ở phần này bạn dễ hình dung nhất, dễ hiểu và áp dụng nhất, khi đã quen với cấu trúc của công thức mảng, bạn sẽ áp dụng được ở nhiều lãnh vực khác nhau.
 
Q

quocnghia

Thành viên sơ cấp
24/3/04
64
0
0
#13
Theo mình nghĩ thì đề tài này đã được thảo luận ở các bài cũ. Nếu có cách xử lý khác hay hơn sẽ thảo luận lại sau.
 
L

levanduyet

Welcome
16/10/04
535
11
18
HCM
my.opera.com
#14
Xin chào tất cả,
Theo tôi được biết việc tính tổng theo nhiều điều kiện thì các bạn làm kế toán cũng thường dùng lắm. Có nên chăng chúng ta cùng nhau xây dựng một hàm ... hay hay ... để cùng dùng chung?
Ví dụ: tôi có một khối dữ liệu về chi tiết hoá đơn. Tôi muốn tính tổng giá trị của một khách hàng, theo mã hàng, ...và từ ngày x đến ngày y...
(Có bạn đặt vấn đề còn nhiều hơn thế nữa)
Các bác thấy ý kiến của tôi như thế nào?
Lê Văn Duyệt
levanduyet@yahoo.com
 
H

handung107

Thành viên thân thiết
28/8/04
576
13
0
VN
www.giaiphapexcel.com
#15
Trời ! Bác Duyệt còn tính xây dựng hàm gì nữa đây ? Cái hàm SumProduct cho phép bác tính tổng với thoả thuê bao nhiêu điều kiện mà lại rất đơn giản, dễ dùng.
Cái công thức mảng cũng giúp bạn nhiều lắm, mà những vân đề này như quocnghia đã nói là khá cũ, được bàn rất nhiều trong Box này rồi, các bạn chịu khó tìm lại nhé
 
P

phongky2013

Thành viên sơ cấp
28/5/14
92
10
8
26
Hà Nội
#16
Trời ! Bác Duyệt còn tính xây dựng hàm gì nữa đây ? Cái hàm SumProduct cho phép bác tính tổng với thoả thuê bao nhiêu điều kiện mà lại rất đơn giản, dễ dùng.
Cái công thức mảng cũng giúp bạn nhiều lắm, mà những vân đề này như quocnghia đã nói là khá cũ, được bàn rất nhiều trong Box này rồi, các bạn chịu khó tìm lại nhé
Đúng vậy, nếu tính tổng có 1 hay nhiều điều kiện thì dùng hàm Sumproduct rất hữu dụng. Bạn nào còn chưa hiểu về cách dùng hàm Sumproduct để tính tổng có điều kiện, xin mời tham khảo video hướng dẫn dưới đây:

 
Thích: songtu345
@

@Hòa

Thành viên sơ cấp
28/9/15
7
0
1
28
#17
Em chào cả nhà ạ. Mọi người cho em hỏi chút. em muốn tính tổng các ô trong bảng chấm công nhưng không tính những ngày lễ và ngày chủ nhât. em làm công thức SUMIF($F$5:$AJ$5,"<>lễ",F9:AJ9)+SUMIF($F$5:$AJ$5,"<>cn",F9:AJ9) nhưng không ra ạ,hic. cả nhà giúp em với ạ :((
 
T

Trần Thế Mai

Thành viên sơ cấp
11/11/16
2
0
1
32
#20
Cho em hỏi có hàm nào tính tổng nhiều điều kiện lặp lại không dùng hàm Sumif và sumifs ko?
VD: em có danh sách gồm 9 cột thể vị trí các công nhân đứng máy và 1cột lương phân bổ trung bình theo từng ngày (mỗi ngày là 1 hàng ngang, 1 người chỉ xuất hiện 1 lần trong 9 vị trí đứng máy), hiện nay em muốn tìm tiền công của từng người theo từng ngày thì em dùng 9 hàm sumifs và tổng tiền cho 1 tháng em dùng 9 hàm sumif
có hàm nào hoặc code VBA nào có thể giải quyết được cho em ko?
 

Thành viên trực tuyến

  • Tú Vưu
  • sxconkho15
  • Đào Thị Hoàng Thi
  • phamtuan3850
  • water830101
  • thuhangk188

Xem nhiều