Hàm SUMIF với nhiều tiêu chí sử dụng VBA trong Microsoft Excel
Trong bài này, chúng ta sẽ tìm hiểu cách sử dụng hàm SUMIF trong VBA với nhiều tiêu chí trong Excel bằng mã VBA.
Để có được đầu ra, chúng tôi sẽ sử dụng kết hợp các hàm OFFSET & COUNTA để tạo Danh sách quản lý tên.
Hãy cho chúng tôi hiểu với một ví dụ:
-
Chúng tôi có báo cáo Bán hàng cho Nhân viên bán hàng, Khu vực và Sản phẩm cho các năm từ 2012 đến 2014.
-
Chúng tôi muốn tìm hiểu Hình thức bán hàng đáp ứng các điều kiện sau: –
-
Đối với tất cả các điều kiện; chúng ta cần tạo Dải tên Để tạo dải tên động cho Người bán hàng:
Nhấn tổ hợp phím tắt CTRL + F3> Nhấp vào Mới & nhập công thức là = OFFSET (Sheet1! $ B $ 1,1,0, COUNTA (Sheet1! $ A: $ A) -1)
Tương tự, tạo phạm vi đã đặt tên cho các điều kiện khác * Nhấn CTRL + F3 để mở Cửa sổ quản lý tên (tham khảo danh sách đã được tạo)
-
Sử dụng tính năng Dán Tên trong tab Công thức, chúng tôi sẽ nhận được toàn bộ danh sách Phạm vi Tên được Xác định trong các ô.
-
Bấm vào Danh sách dán
nDate * = OFFSET (Sheet1! $ A $ 1,1,0, COUNTA (Sheet1! $ A: $ A) -1)
nProduct * = OFFSET (Sheet1! $ D $ 1,1,0, COUNTA (Sheet1! $ A: $ A) -1)
nRegion * = OFFSET (Sheet1! $ C $ 1,1,0, COUNTA (Sheet1! $ A: $ A) -1)
nSales * = OFFSET (Sheet1! $ E $ 1,1,0, COUNTA (Sheet1! $ A: $ A) -1)
nSalesman * = OFFSET (Sheet1! $ B $ 1,1,0, COUNTA (Sheet1! $ A: $ A) -1)
Chúng ta cần làm theo các bước được đề cập dưới đây để khởi chạy trình soạn thảo VB Nhấp vào tab Nhà phát triển Từ nhóm Mã, chọn Visual Basic
-
Nhấp vào Chèn, sau đó nhấp vào Mô-đun
-
Điều này sẽ tạo mô-đun mới.
-
Nhập mã sau vào Mô-đun Sub VBASumifs () mysalesman = [H3] myregion = [H4] myproduct = [H5]
tsales = Application.WorksheetFunction.SumIfs ([nsales], [nsalesman], mysalesman, [nregion], myregion, [nproduct], myproduct)
[H6] = tsales End Sub
Nhấp vào Chèn dải băng> Hình dạng> Vẽ hình Nhấp chuột phải vào hình ảnh và nhấp vào gán macro
-
Sau khi gán macro; nhấp vào nút Cập nhật Bán hàng & chúng tôi sẽ nhận được kết quả trong ô H6
Lưu ý: – Sau khi thay đổi tên người bán hàng, khu vực và sản phẩm bạn phải bấm vào cập nhật doanh số.
Để tìm ra Doanh số đáp ứng các điều kiện giữa 2 ngày; sau đây là ảnh chụp tiêu chí:
Chúng tôi sẽ sử dụng đoạn mã sau:
Sub Sumifs2Dates ()
mysalesman = [H3] myregion = [H4] myproduct = [H5]
stdate = [H6]
EndDate = [H7]
tsales = Application.WorksheetFunction.SumIfs ([nsales], [nsalesman], mysalesman, [nregion], myregion, [nproduct], myproduct, [ndate], “> =” & stdate, [ndate], “⇐” & EndDate)
[H8] = tsales End Sub
-
Nhấn phím tắt ALT + F8 để mở cửa sổ Macro và sau đó chọn macro.
-
Ngoài ra, bạn có thể nhấn F5 để chạy mã trong màn hình VBA.
-
Sau khi thực hiện macro chúng ta sẽ nhận được kết quả ở ô H8
Đây là cách chúng ta có thể sử dụng SUMIF nhiều tiêu chí trong VBA để tính tổng doanh số bán hàng giữa 2 ngày.