Hàm CountIfs trong Excel VBA

Xin chào,

Tôi đang cố gắng viết mã VBA để lấy tổng số học sinh tham dự mỗi thành phố. Đoạn mã tôi đã sử dụng để tạo định dạng mong muốn được hiển thị bên dưới. Tổng số học sinh mỗi thành phố luôn chính xác; tuy nhiên, mỗi khi tôi chạy mã, phần " Tiểu học, Trung học cơ sở và Trung học phổ thông" cho Daytona và Tallahassee lại lặp lại những gì được liệt kê cho Jacksonville (Tiểu học, Trung học cơ sở, Trung học phổ thông).

Đây là định dạng tôi muốn thấy...

Tổng số trường tiểu học / trung học cơ sở / trung học phổ thông

100 ( 25 / 25 / 50 ) ---- Jacksonville

200 (50/105/45 ) ---- Daytona

150 ( 80    ( / 20 / 50 ) ---- Tallahassee

Đây là đoạn mã tôi đã tạo ra...

Bảng tính Dim sh As

Đặt sh = Worksheet("Bảng điểm danh")

'Tổng số học sinh tham dự mỗi thành phố cho từng trường học'

Bảng tính ("3x5").Phạm vi ("C5") = _

WorksheetFunction.CountIfs(sh.Range("$Q:$Q"), "Hiện tại", sh.Range("$G:$G"), "Jacksonville") & "(" & _

WorksheetFunction.CountIfs(sh.Range("$Q:$Q"), "Hiện tại", sh.Range("$G:$G"), "Tiểu học") & "/" & _

WorksheetFunction.CountIfs(sh.Range("$Q:$Q"), "Hiện tại", sh.Range("$G:$G"), "Trung học cơ sở") & "/" & _

WorksheetFunction.CountIfs(sh.Range("$Q:$Q"), "Hiện tại", sh.Range("$G:$G"), "Trung học") & "/" & ""

Bảng tính ("3x5").Phạm vi ("C6") = _

WorksheetFunction.CountIfs(sh.Range("$Q:$Q"), "Hiện tại", sh.Range("$G:$G"), "Daytona") & "(" & _

WorksheetFunction.CountIfs(sh.Range("$Q:$Q"), "Hiện tại", sh.Range("$G:$G"), "Tiểu học") & "/" & _

WorksheetFunction.CountIfs(sh.Range("$Q:$Q"), "Hiện tại", sh.Range("$G:$G"), "Trung học cơ sở") & "/" & _

WorksheetFunction.CountIfs(sh.Range("$Q:$Q"), "Hiện tại", sh.Range("$G:$G"), "Trung học") & "/" & ""

Bảng tính ("3x5").Phạm vi ("C7") = _

WorksheetFunction.CountIfs(sh.Range("$Q:$Q"), "Hiện tại", sh.Range("$G:$G"), "Tallahassee") & "(" & _

WorksheetFunction.CountIfs(sh.Range("$Q:$Q"), "Hiện tại", sh.Range("$G:$G"), "Tiểu học") & "/" & _

WorksheetFunction.CountIfs(sh.Range("$Q:$Q"), "Hiện tại", sh.Range("$G:$G"), "Trung học cơ sở") & "/" & _

WorksheetFunction.CountIfs(sh.Range("$Q:$Q"), "Hiện tại", sh.Range("$G:$G"), "Trung học") & "/" & ""




Trả lời:
Tôi nghĩ bạn đã hiểu rồi >
>WorksheetFunction.CountIfs(sh.Range("$Q:$Q"), "Present",, sh.Range("$G:$G"), "Daytona",sh.Range("$H:$H"), "Elementary") sẽ bao gồm cả 3 điều kiện. >
>Điều này chỉ đếm những hàng có Q="Hiện tại:", G="Daytona" và H="Tiểu học">
> >WorksheetFunction.CountIfs(sh.Range("$Q:$Q"), "Present",, sh.Range("$G:$G"), "Jacksonville",sh.Range("$H:$H"), "Elementary") sẽ bao gồm cả 3 điều kiện. >
>Điều này chỉ đếm những hàng có Q="Hiện tại:", G="Jacksonville" và H="Tiểu học">
>Để tính tổng, chỉ cần loại bỏ điều kiện và phạm vi cho loại trường học>
> >WorksheetFunction.CountIfs(sh.Range("$Q:$Q"), "Hiện tại",, sh.Range("$G:$G"), "Daytona") >
>Điều này sẽ đếm tất cả các hàng có Q="Hiện tại:" và G="Daytona" bất kể nội dung trong cột H là gì, từ đó cho bạn tổng số Daytona.

Comments

Popular posts from this blog

Thu hẹp và mở rộng cột trong Excel

Excel 2016 - mở tất cả các tệp trong MỘT phiên bản

Hàm IF của Excel