Hãy xem xét UDF () sau:
Public Function SuperSum(shName As String) As Variant
Application.Volatile
Dim sh As Worksheet, r As Range, v As Variant
Set sh = Sheets(shName)
For Each r In sh.UsedRange
v = r.Value
If IsNumeric(v) And Not IsDate(v) Then
SuperSum = SuperSum + v
End If
Next r
End Function
Hàm do người dùng xác định (UDF) rất dễ cài đặt và sử dụng:
- ALT-F11 xuất hiện cửa sổ VBE
- ALT-I ALT-M mở ra một mô-đun mới
- dán nội dung vào và đóng cửa sổ VBE
Nếu bạn lưu sổ làm việc, UDF sẽ được lưu cùng với nó. Nếu bạn đang sử dụng phiên bản Excel sau đó sau 2003, bạn phải lưu tệp dưới dạng .xlsm chứ không phải .xlsx
Để xóa UDF:
- đưa lên cửa sổ VBE như trên
- xóa mã ra
- đóng cửa sổ VBE
Để sử dụng UDF từ Excel:
=SuperSum("Sheet2")
Để tìm hiểu thêm về macro nói chung, xem:
http://www.mvps.org/dmcritchie/excel/getstarted.htmlm
và
http://msdn.microsoft.com/en-us/l Library / ee814735 (v = office.14) .aspx
và để biết chi tiết về UDF, xem:
http://www.cpearson.com/excel/WritingFiancesInVBA.aspx
Macro phải được kích hoạt để làm việc này!
=SUMIF([range],"<36526")