SUMPRODUCT Và Công Thức Mảng - Phép Tính Có Nhiều điều Kiện

  • Portal
  • Tìm kiếm
  • Thành viên
  • Lịch
  • Hướng dẫn
  • Quyên góp
Thủ Thuật Access
Xin chào quý khách! Đăng nhập Đăng ký
Đăng nhập
Tên dùng
Mật khẩu: Quên mật khẩu?
Remember me
Thủ Thuật Access › Thế Giới Văn Phòng › Tin Học Văn Phòng › Ms Excel v « Trở lại 1 2 3 4 5 Tiếp theo » SUMPRODUCT và Công thức mảng - Phép tính có nhiều điều kiện Đánh giá chủ đề:
  • 3 Votes - 3.33 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Thread Modes SUMPRODUCT và Công thức mảng - Phép tính có nhiều điều kiện
Noname Offline Lãng du ******* Bài viết: 2,631 Chủ đề: 483 Tham Gia: 05-08 -10 Điểm danh tiếng: 37 Số lần cảm ơn 4024 3218 cảm ơn trong 1570 bài Tiền Access: 133,984.33Ac$ #1 10-11-10, 03:12 PM SUMPRODUCT và Công thức mảng - Phép tính có nhiều điều kiện Nguồn: http://my.opera.com/duytuanvn/blog/ Công thức mảng, SUMPRODUCT, Lập công thức trong Excel Đã có rất nhiều người dùng Excel gặp phải những bài toán thống kê phức tạp, tính tổng, đếm các chỉ tiêu có nhiều điều kiện ràng buộc. Excel cũng cũng cấp các hàm SUMIF, nhóm hàm Database: DSUM, DCOUNT,...Nhưng có lẽ tính "cơ động" của chúng vẫn làm bạn chưa ứng ý. Bài viết dưới đây tôi giới thiệu các bạn 2 phương pháp để thực hiện phép tính tổng có nhiều điều kiện. Hàm SUMPRODUCT Cấu trúc SUMPRODUCT(array1,array2,array3, ...) Array - Mảng dữ liệu là một tập hợp dãy giá trị liên tiếp trong một khảng nào đó. VD A1:C1 hoặ A1:A10,... Phép tính này cho phép chúng ta tính tổng của tích array1*array2*array3* ...array30. VD: A: Số lượng; B: Đơn giá A1 =2 B1=20 C1="Cam" D1="Giống lai" A2 =3 B2=10 C2="Bưởi" D2="Không" A3 =4 B3=25 C3="Cam" D3="Không" Bây giờ cần tính doanh thu của các loại hoa quả array1=A1:A3 array2=B1:B3 Công thức =SumProduct(A1:A3, B1:B3) = 170 Bản chất công thức làm việc như thế này =A1*B1+A2*B2+A3*B3 kết quả là 170 Nhắc lại về phép tính logic: Giá trị kiểu logic chỉ cho ra 1 trong 2 giá trị là TRUE/1, FALSE/0 Phép toán logic:<, >, <>, =, >=, <=, Not() VD: 2>3=False 3>1=True 4>3=True *) Logic và - AND =(2>3)*(3>1)*(4>3)=False*True*True=0*1*1=False/0 tương đương với hàm AND(2>3,3>1,4>3). Ít nhất một logic=False thì kết quả sẽ là False hay 0. * Logic hoặc - OR =(2>3)+(3>1)+(4>3)=False+True+True=0+1=True/1 tương đương với hàm OR(2>3,3>1,4>3). Ít nhất một logic=True thì kết quả sẽ là True hay 1. Lưu ý tổng của các giá trị là True=True=1). *) Tính tổng có nhiều điều kiện: Cách 1: dùng SUMPRODUCT Tính tổng doanh thu của loại là "Cam" =SUMPRODUCT(A1:A3,B1:B3*(C1:C3="Cam")) hoặc =SUMPRODUCT(A1:A3*B1:B3*(C1:C3="Cam")) = 140 Công thức tính như sau: =A1*B1*(C1="Cam")+A2*B2*(C2="Cam")+A3*B3*(C3="Cam") =2*20*True+3*10*False+4*25*True =2*20*1+3*10*0+4*25*1= 140 Cách 2: dung Công thức mảng - "Formula Array" =Sum(IF(C1:C3="Cam",A1:A3*B1:B3,0)) Kết thức nhẫn tổ hợp CTRL+SHIFT+ENTER. Với cách làm này EXCEL sẽ phân tích như sau: Xét trên từng dòng trong mảng (array) dòng1: (c1="Cam")=true nên lấy A1*B1=2*20 dòng2: (c2="Cam")=false nên lấy 0 (theo cách của lấy của hàm IF) dòng3: (c3="Cam")=true nên lấy A3*B3=4*25 Sau khi chạy hết các dòng, EXCEL sẽ dùng hàm SUM để tính tổng kết quả tính được ở từng dòng=2*20+0+2*25=140. Nếu trong công thức là hàm khác hàm SUM thì cách tính sẽ theo hàm đó. Như vậy có 2 cách tính: =SUMPRODUCT(A1:A3*B1:B3*(C1:C3="Cam")) và =Sum(IF(C1:C3="Cam",A1:A3*B1:B3,0)) *) Vậy tại sao không dùng là =SUM(A1:A3*B1:B3*(C1:C3="Cam")) mà phải dùng hàm =SUMPRODUCT(A1:A3*B1:B3*(C1:C3="Cam")) ? Các bạn nhớ lại cấu trúc của SUM là SUM(number1,number2, ...) Còn SUMPRODUCT là SUMPRODUCT(array1,array2,array3, ...) number <> array Nếu SUMPRODUCT(A1:A3*B1:B3*(C1:C3="Cam")) rồi ENTER là đúng vì đối số của nó phải là mảng - Array. Nếu công thức =SUM(A1:A3*B1:B3*(C1:C3="Cam")) rồi ENTER kết quả là #VALUE! -lỗi vì A1:A3 là một array chứ không phải là một number. Nếu nhấn tổ hợp CTRL+SHIFT+ENTER. Với cách làm này EXCEL sẽ phân tích như sau: Xét trên từng dòng trong mảng (array) dòng1: A1*B1*(c1="Cam")=2*20*True=2*20*1 dòng2: A2*B2*(c2="Cam")=3*10*False=3*10*0 dòng3: A3*B3*(c3="Cam")=2*25*True=4*25*1 Sau khi chạy hết các dòng, EXCEL sẽ dùng hàm SUM để tính tổng kết quả tính được ở từng dòng=2*20*1+3*10*0 +4*25*1=140. Vậy vẫn dùng được =SUM(A1:A3*B1:B3*(C1:C3="Cam")) với điều kiện nhấn tổ hợp phím CTRL+SHIFT+ENTER Như vậy đến đây chúng ta có có 3 cách tính: =SUMPRODUCT(A1:A3*B1:B3*(C1:C3="Cam")) nhấn phím ENTER =SUM(IF(C1:C3="Cam",A1:A3*B1:B3,0)) nhấn phím CTRL+SHIFT+ENTER =SUM(A1:A3*B1:B3*(C1:C3="Cam")) nhấn phím CTRL+SHIFT+ENTER Chúng có thể kết hợp rất nhiều điều kiện vào trong hàm thông qua phép toán logic nhân-và- And, cộng - hoặc - Or. *) Dùng hàm SUMPRODUCT hay dùng SUM kết hợp CTRL+SHIFT+ENTER đều cho ra được kết quả như nhau chính là do phép toán logic của bạn. *) Hàm SUMPRODUCT chỉ có thể tính tổng theo nhiều điều kiện *) Công thức mảng - Formula Array ngoài việc tính tổng có nhiều điều kiện còn làm rất nhiều phép tính khác do cách sử dụng hàm mà thôi. Chữ ký của Noname 020 ღღღღღTài sản của Noname (View All Items) ღღღღღ Website Find Reply Những người đã cảm ơn Cafe Via He , Hạ Vàng
« Bài trước | Bài tiếp »
Có thể liên quan đến chủ đề
Chủ đề: Tác giả Trả lời: Xem: Bài mới nhất
[Hỏi] Định dạng màu cho chữ trong ô theo điều kiện số lượng hàng giống nhau cpucloi 1 325 10-11-23, 01:07 PM Bài mới nhất: ongke0711
Chuyển công thức ở chuỗi text thành hàm trong Excel Noname 5 3,948 25-01-21, 11:24 AM Bài mới nhất: Noname
Hướng Dẫn Sử Dụng Subtotal Để Cộng Dồn Các Mục Giống Nhau Trong Excel Noname 0 1,157 20-11-20, 02:14 PM Bài mới nhất: Noname
Chương trình Copy dữ liệu từ nhiều File Excel thuyyeu99 22 4,406 24-03-20, 11:27 PM Bài mới nhất: tienpq
Tính tổng một vùng bất kỳ theo cột Xuân Thanh 0 1,212 07-03-20, 08:01 AM Bài mới nhất: Xuân Thanh
  • Xem ở phiên bản có thể in
  • Theo dõi chủ đề này
Chuyển nhanh: Tin nhắn cá nhân Trang cá nhân Ai đang online ? Tìm kiếm Trang chủ diễn đàn Thông Tin Chung -- Thông báo ---- Chức năng diễn đàn -- Trao đổi Góp ý Access Cơ Bản -- Table -- Query -- Forms -- Report -- Macro -- Class Moudules -- Menu Bar/Ribbon -- Thành viên giúp nhau ---- Bài tập Access Access Nâng Cao -- Thư Viện Giáo Trình -- Thư Viện Hàm -- Thư viện thủ thuật -- Thủ thuật VBA -- Thư Viện Ứng Dụng ---- Share Code -- Tương tác Chương trình ngoài ---- MS SQL Server ---- Add-In -- Thảo Luận Access Thế giới lập trình -- VB.NET -- VB6 -- XML Thế Giới Văn Phòng -- Tin Học Văn Phòng ---- MS Word ---- Ms Excel ---- Ms PowerPoint -- Kỹ năng văn phòng ---- Sales & marketing -- English for Office Giao lưu giải trí -- Quán cóc -- CLB Âm Nhạc ---- Phòng chiếu phim -- Góc ảnh -- Góc Thơ -- Quán Văn Chương -- Vui cười Warehouse -- Chuyện bốn phương -- Liên Kết Website ---- Nhật ký webmaster ---- Góc Blogger ---- Góc MyBB -- Việc Làm Access -- Lưu Trữ ---- Phòng thử nghiệm User(s) browsing this thread: 1 Guest(s) Diễn Đàn Thơ Văn Thi Ẩm Lâu| Blog Học Excel| Nhật ký IT
  • Liên hệ
  • Thủ Thuật Access
  • Lên trên
  • Bản rút gọn
  • Tin RSS
Thời gian hiện tại : 06-01-26, 06:47 AM Mã nguồn bởi MyBB, © 2002-2026 MyBB Group. Linear ModeThreaded Mode

Từ khóa » Sum Mảng Có điều Kiện