Hàm Countif bằng VBA

  • Thread starter Thread starter nvh611
  • Ngày gửi Ngày gửi
Liên hệ QC

nvh611

Thành viên thường trực
Tham gia
20/5/17
Bài viết
228
Được thích
42
Nhờ các bạn viết giúp hàm như file đính kèm
Cảm ơn các bạn!
 

File đính kèm

Mã:
Function CountIfArrS(ByVal Dk As String, ParamArray ArrS()) As Long
    Dim Arr, iTem, n As Long, k As Long
    n = Len(Dk)
    Dk = UCase(Dk)
    For Each Arr In ArrS
        For Each iTem In Arr
            k = k + (Len(iTem) - Len(Replace(UCase(iTem), Dk, "", 1))) / n
        Next iTem
    Next Arr
    CountIfArrS = k
End Function
Chào bạn @HieuCD bạn ơi tôi kiểm tra hàm thì sảy ra lỗi không làm được
Vậy nhờ bạn xem lại và sửa giúp nhé
Cảm ơn bạn!
 

File đính kèm

Upvote 0
Chào bạn @HieuCD bạn ơi tôi kiểm tra hàm thì sảy ra lỗi không làm được
Vậy nhờ bạn xem lại và sửa giúp nhé
Cảm ơn bạn!
Tùy bạn chon kết quả khi DK rổng
Mã:
Function Dem_Chuoi(ByVal Dk As String, ParamArray ArrS()) As Long 'HieuCD----LÂY HAM NAY KHÔNG CAN DAU PHÂN CACH
'HieuCD=dem(dk,H4,K6,K6:K7)
   'https://www.giaiphapexcel.com/diendan/threads/hàm-countif-b?ng-vba.140763/#post-905890
    Dim Arr, iTem, n As Long, k As Long
    n = Len(Dk)
    'If n = 0 Then Dem_Chuoi = 0: Exit Function
    Dk = UCase(Dk)
    For Each Arr In ArrS
        For Each iTem In Arr
            iTem = CStr(iTem)
            If TypeName(iTem) = "String" Then
              k = k + (Len(iTem) - Len(Replace(UCase(iTem), Dk, "", 1))) / n
            End If
        Next iTem
    Next Arr
    Dem_Chuoi = k
End Function
 
Upvote 0
Tùy bạn chon kết quả khi DK rổng
Mã:
Function Dem_Chuoi(ByVal Dk As String, ParamArray ArrS()) As Long 'HieuCD----LÂY HAM NAY KHÔNG CAN DAU PHÂN CACH
'HieuCD=dem(dk,H4,K6,K6:K7)
   'https://www.giaiphapexcel.com/diendan/threads/hàm-countif-b?ng-vba.140763/#post-905890
    Dim Arr, iTem, n As Long, k As Long
    n = Len(Dk)
    'If n = 0 Then Dem_Chuoi = 0: Exit Function
    Dk = UCase(Dk)
    For Each Arr In ArrS
        For Each iTem In Arr
            iTem = CStr(iTem)
            If TypeName(iTem) = "String" Then
              k = k + (Len(iTem) - Len(Replace(UCase(iTem), Dk, "", 1))) / n
            End If
        Next iTem
    Next Arr
    Dem_Chuoi = k
End Function
Cảm ơn bạn @HieuCD rất nhiều
Chúc bạn buổi tối vui vui
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom