Tìm phần tử duy nhất trong tập hợp bỏ qua ô rỗng

Chia sẻ bởi:hands
★★★★★
Quảng cáo

Thưa Anh Chị

Em đang muốn lấy phần từ duy nhất của 1 tập hợp, nhưng em chưa biết cách để loại bỏ ô trống nên ô trống đó vẫn được ghi nhận là một phần tử
Em đang muốn lấy phần từ duy nhất từ vùng D12:D27 và trả kết quả về D55. Vậy anh chị có cách nào xin chỉ cho em với ạ!

Sub TH_MAHANG(item As Variant)
Set dict = CreateObject("Scripting.dictionary")
Set wb = ActiveWorkbook
Set sh = wb.Sheets(1)
Dim lr As Integer
lr = sh.Range("A" & Rows.Count).End(xlUp).Row
arr = sh.Range("D12:D" & lr - 1).Value
For i = 1 To UBound(arr, 1)
If Not dict.exists(arr(i, 1)) Then
    item = arr(i, 1)
    dict.Add arr(i, 1), arr(i, 1)
End If
Next i
sh.Range("D" & lr + 27).Resize(dict.Count) = Application.Transpose(dict.items)
Set dict = Nothing
Set arr = Nothing
Set item = Nothing
End Sub

1105

Thêm hàm IsEmpty để kiểm tra rỗng

If Not IsEmpty(arr(i, 1)) And Not dict.exists(arr(i, 1)) Then

www.giaiphapexcel.com/diendan/threads/t%C3%ACm-ph%E1%BA%A7n-t%E1%BB%AD-duy-nh%E1%BA%A5t-trong-t%E1%BA%ADp-h%E1%BB%A3p-b%E1%BB%8F-qua-%C3%B4-r%E1%BB%97ng.163706/post-1092052

hoặc đơn giản là thêm điều kiện
arr(i, 1)<>""

Theo mình thì vẫn khuyến cáo dùng arr(i,1)<>"" (có nặng nề hơn vbnullstring tí) thay vì dùng isEmpty(arr(i,1))

www.giaiphapexcel.com/diendan/threads/t%C3%ACm-ph%E1%BA%A7n-t%E1%BB%AD-duy-nh%E1%BA%A5t-trong-t%E1%BA%ADp-h%E1%BB%A3p-b%E1%BB%8F-qua-%C3%B4-r%E1%BB%97ng.163706/post-1092058

Xây dựng Lương 3P, KPI cho Doanh nghiệp
Khóa học SprinGO phù hợp

Xây dựng Lương 3P, KPI cho Doanh nghiệp

Làm thế nào để trả lương cho nhân viên chính xác nhất? Đây là một trong những câu hỏi khó trong quản trị nhân...

Xem khóa học
★★★★★ 5 ★ 1 👤 0 ▥ 0
Quảng cáo

Bạn nên đọc

Leave a Reply

Your email address will not be published. Required fields are marked *

Quảng cáo

Cũ vẫn chất

Xem thêm