trithanhkt2
Thành viên mới
- Tham gia
- 4/11/11
- Bài viết
- 10
- Được thích
- 1
cái này có khi phải dùng đến vba bạn ahCác bác giúp em cái này, tìm các công ty có tên trung nhau và đánh dấu lại,
có những trường hợp như sau:
Công ty ABC
Cty ABC
DNTN XYZLMN
DN tư nhân XYZLMN
Doanh nghiệp tư nhân XYZLMN
em có gửi file kèm theo nhờ các bác nào rành giúp em. ^^
Sub filter()
Dim tmparr, item, arr
Dim n As Long, i As Long, ir As Long
ActiveSheet.AutoFilterMode = flase
tmparr = Range("B1", Range("B65536").End(3))
With CreateObject("Scripting.Dictionary")
For Each item In tmparr
ir = ir + 1
If Len(item) Then
item = Replace(item, "DNTN", "", , , vbTextCompare)
item = Replace(item, "Công ty", "", , , vbTextCompare)
item = Replace(item, "DN T? Nhân", "", , , vbTextCompare)
item = Replace(item, "Cty", "", , , vbTextCompare)
tmp = Trim(CStr(item))
If Not .Exists(tmp) Then
n = n + 1
.Add tmp, n
Else
Range("C:C").Cells(ir).Interior.Color = 65535
End If
End If
Next
End With
End Sub
Thử code "cùi cùi" này xem :
( các cty trùng nhau , sẽ đc tô màu vàng tại cột C)File đính kèmMã:Sub filter() Dim tmparr, item, arr Dim n As Long, i As Long, ir As Long ActiveSheet.AutoFilterMode = flase tmparr = Range("B1", Range("B65536").End(3)) With CreateObject("Scripting.Dictionary") For Each item In tmparr ir = ir + 1 If Len(item) Then item = Replace(item, "DNTN", "", , , vbTextCompare) item = Replace(item, "Công ty", "", , , vbTextCompare) item = Replace(item, "DN T? Nhân", "", , , vbTextCompare) item = Replace(item, "Cty", "", , , vbTextCompare) tmp = Trim(CStr(item)) If Not .Exists(tmp) Then n = n + 1 .Add tmp, n Else Range("C:C").Cells(ir).Interior.Color = 65535 End If End If Next End With End Sub
Bạn cho mình hỏi, có thể viết code để các cặp Cty trùng nhau sẽ có màu sắc khác nhau được không, để dễ nhận ra sự khác biệt.
Xin cảm ơn!
Bác ơi, trường hợp này không tìm ra, VD:
+ Ghi nhầm DNTN với Công ty
DNTN Kim Ngân
Công ty TNHH Kim Ngân
Bác hungpecc1 giúp em tí nhé ^^ tks bác nhiều
để mình liệt kê nha bạn mình gửi file qua nhé
Sub filter()
Dim tmparr, item
Dim n As Long, i As Long, ir As Long
ActiveSheet.AutoFilterMode = flase
tmparr = Range("B1", Range("B65536").End(3))
With CreateObject("Scripting.Dictionary")
For Each item In tmparr
ir = ir + 1
If Len(item) Then
item = Replace(item, "DNTN", "", , , vbTextCompare)
item = Replace(item, "Công ty", "", , , vbTextCompare)
item = Replace(item, "DN T? Nhân", "", , , vbTextCompare)
item = Replace(item, "Cty", "", , , vbTextCompare)
item = Replace(item, "công ty TNHH ", "", , , vbTextCompare)
tmp = Trim(CStr(item))
If Not .Exists(tmp) Then
.Add tmp, ir
Else
Range("C:C").Cells(ir).Interior.Color = .item(tmp) * 100
Range("C:C").Cells(.item(tmp)).Interior.Color = .item(tmp) * 100
End If
End If
Next
End With
End Sub
Ý của mình:Bạn thử thay dòng code .Interior.Color = int(rnd()*1000) xem
Bác giúp em xem cái excel ở page 11 nhe, tks mấy bác