Các bác chỉ giúp chỗ sai, em sử dụng SUMPRODUCT trong VBA như sau: Function THUZ(diemmonhoc As Range)
THUZ = WorksheetFunction.SumProduct(((diemmonhoc) >= 3.5) * ((diemmonhoc) < 5))
End Function
Nhưng nó báo lỗi!
THUZ = Evaluate("=SumProduct((diemmonhoc>= 3.5) * (diemmonhoc < 5))")
Phải vậy mới dc... Nói chung là phải thêm anh hai EVALUATE vào... còn lại là sự chính xác của hàm bạn.. Ko biết dc
Chú ý nếu mãng bằng 1 ký tự nào đó thì lại viết khác à nha:
Ví dụ:
PHP:
Sub Macro1()
Tuan = Evaluate("=SumProduct((TEN = ""A"") * (DIEM < 11) * (DIEM))")
Range("C1").Value = Tuan
End Sub
Chú ý có 2 dấu "" trước chử A và 2 dấu sau chử A... Lý ra theo công thức trong Excel thì sẽ viết là: =SumProduct((TEN = "A") * (DIEM < 11) * (DIEM))
Nhưng bây giờ phải viết vậy đấy! Rắc rối nhỉ?
ANH TUẤN
Báo name hay báo gì thì bạn phải xem lại hàm của mình... Trước tiên bạn gõ hàm này trực tiếp vào cell, nếu ra kết quả thì đồng nghĩa trong code cũng sẽ ra kết quả... bằng ngược lại thì bạn phải xem lại hàm của mình.. Tôi làm sao biết dc hàm này ý nghĩa thế nào chứ...
Nói chung cách làm thì ko sai.. chỉ là như tôi đã nói ở trên.. XEM LẠI ĐỘ CHÍNH XÁC CỦA HÀM BẠN
ANH TUẤN