Ngô Hải Đăng
Thành viên hoạt động
- Tham gia
- 31/8/17
- Bài viết
- 183
- Được thích
- 247
- Giới tính
- Nam
Mình ví dụ tạo Hàm Tô Màu, truyền vô 2 tham số dòng và cột. Nếu viết như vậy thì Excel sẽ báo lỗi
Nhưng nếu mình viết như vậy thì Excel sẽ không báo lỗi nữa
Tại ô bất kỳ gõ công thức =ToMauBatThuong(Dòng số, Cột số)
Cách viết kiểu này thì vẫn còn 1 số hạn chế như: không thể dùng lệnh Clear, Delete,...Tuy nhiên nếu biết cách vận dụng thì sẽ tạo ra được 1 số hàm hữu ích cho mình.
Update code https://www.giaiphapexcel.com/diend...function-udf-chạy-như-sub.153245/post-1005047
Mã:
Function ToMauBinhThuong(ThamSo1 As Long, ThamSo2 As Long)
Cells(ThamSo1, ThamSo2).Interior.Color = &HFF
End Function
Mã:
Public ThamSo As Collection
Function ToMauBatThuong(ThamSo1 As Long, ThamSo2 As Long)
Set ThamSo = New Collection
ThamSo.Add ThamSo1
ThamSo.Add ThamSo2
Application.Caller.Parent.[0+ChaySub("S_ToMauBatThuong")]
End Function
Private Function ChaySub(TenSub As String)
Application.Run TenSub
Set ThamSo = Nothing
End Function
Private Sub S_ToMauBatThuong()
Cells(ThamSo(1), ThamSo(2)).Interior.Color = &HFF
End Sub
Cách viết kiểu này thì vẫn còn 1 số hạn chế như: không thể dùng lệnh Clear, Delete,...Tuy nhiên nếu biết cách vận dụng thì sẽ tạo ra được 1 số hàm hữu ích cho mình.
Update code https://www.giaiphapexcel.com/diend...function-udf-chạy-như-sub.153245/post-1005047
Lần chỉnh sửa cuối: