Lọc những số IMEI tồn

Liên hệ QC

namnguyenthe1982

Thành viên mới
Tham gia
17/6/11
Bài viết
7
Được thích
1
Chào các bạn,
Mình mới biết excel nên nhờ các bạn giúp đỡ về phần tồn như sau:

Cột B: là các số IMEI đã giao đi
Cột C: là các số IMEI mình nhận lại
Yêu cầu:
Khi mình nhận lại 1 số IMEI (cột C) mà số IMEI đó không có trong cột B thì báo lỗi, nếu có thì cột D sẽ hiển thị những số IMEI còn tồn ( trừ ra những số IMEI đã nhận lại )
Mong các bạn giúp đỡ.
 

File đính kèm

  • Book1.xls
    14.5 KB · Đọc: 17
Chào các bạn,
Mình mới biết excel nên nhờ các bạn giúp đỡ về phần tồn như sau:

Cột B: là các số IMEI đã giao đi
Cột C: là các số IMEI mình nhận lại
Yêu cầu:
Khi mình nhận lại 1 số IMEI (cột C) mà số IMEI đó không có trong cột B thì báo lỗi, nếu có thì cột D sẽ hiển thị những số IMEI còn tồn ( trừ ra những số IMEI đã nhận lại )
Mong các bạn giúp đỡ.
*Nếu muốn dùng code :
Thử copy code này vào , rồi run xem thế nào !
[GPECODE=vb]
Sub GPE()
Dim arrGiao, ArrNhan
Dim i&
arrGiao = Range("B3", [B65536].End(3))
ArrNhan = Range("C3", [C65536].End(3))
With CreateObject("scripting.dictionary")
For i = 1 To UBound(arrGiao, 1)
tmp = Trim(CStr(arrGiao(i, 1)))
If Len(tmp) Then
If Not .exists(tmp) Then .Add tmp, tmp
End If
Next
For i = 1 To UBound(ArrNhan, 1)
tmp = Trim(CStr(ArrNhan(i, 1)))
If Not .exists(tmp) Then
MsgBox "Serial nhan : " & tmp & " khong co trong serial giao"
Range("C" & i + 3).Interior.Color = vbYellow
Else
.Item(tmp) = ""
End If
Next
Range("D3:D1000").Clear: Range("D:D").NumberFormat = "@"
Range("D3").Resize(UBound(arrGiao, 1)) = WorksheetFunction.Transpose(.Items)
End With
End Sub
[/GPECODE]
 
Upvote 0
*Nếu muốn dùng code :
Thử copy code này vào , rồi run xem thế nào !
[GPECODE=vb]
Sub GPE()
Dim arrGiao, ArrNhan
Dim i&
arrGiao = Range("B3", [B65536].End(3))
ArrNhan = Range("C3", [C65536].End(3))
With CreateObject("scripting.dictionary")
For i = 1 To UBound(arrGiao, 1)
tmp = Trim(CStr(arrGiao(i, 1)))
If Len(tmp) Then
If Not .exists(tmp) Then .Add tmp, tmp
End If
Next
For i = 1 To UBound(ArrNhan, 1)
tmp = Trim(CStr(ArrNhan(i, 1)))
If Not .exists(tmp) Then
MsgBox "Serial nhan : " & tmp & " khong co trong serial giao"
Range("C" & i + 3).Interior.Color = vbYellow
Else
.Item(tmp) = ""
End If
Next
Range("D3:D1000").Clear: Range("D:D").NumberFormat = "@"
Range("D3").Resize(UBound(arrGiao, 1)) = WorksheetFunction.Transpose(.Items)
End With
End Sub
[/GPECODE]
Cảm ơn bạn đã giúp đỡ, mình không rành về code, để mình tìm hiểu thử xem. Một lần nữa cảm ơn bạn.
 
Upvote 0
*Nếu muốn dùng code :
Thử copy code này vào , rồi run xem thế nào !
[GPECODE=vb]
Sub GPE()
Dim arrGiao, ArrNhan
Dim i&
arrGiao = Range("B3", [B65536].End(3))
ArrNhan = Range("C3", [C65536].End(3))
With CreateObject("scripting.dictionary")
For i = 1 To UBound(arrGiao, 1)
tmp = Trim(CStr(arrGiao(i, 1)))
If Len(tmp) Then
If Not .exists(tmp) Then .Add tmp, tmp
End If
Next
For i = 1 To UBound(ArrNhan, 1)
tmp = Trim(CStr(ArrNhan(i, 1)))
If Not .exists(tmp) Then
MsgBox "Serial nhan : " & tmp & " khong co trong serial giao"
Range("C" & i + 3).Interior.Color = vbYellow
Else
.Item(tmp) = ""
End If
Next
Range("D3:D1000").Clear: Range("D:D").NumberFormat = "@"
Range("D3").Resize(UBound(arrGiao, 1)) = WorksheetFunction.Transpose(.Items)
End With
End Sub
[/GPECODE]
Đọc code thì không hiểu gì, nhưng mà Insert\run => "Ngạc nhiên chưa", quả thật HAY
P/S: học lập trình bắt đầu từ đâu bạn ơi??? đọc GPE thì thấy bao la rộng lớn quá...
 
Upvote 0
Đọc code thì không hiểu gì, nhưng mà Insert\run => "Ngạc nhiên chưa", quả thật HAY
P/S: học lập trình bắt đầu từ đâu bạn ơi??? đọc GPE thì thấy bao la rộng lớn quá...
Tuyệt vời, cảm ơn bạn hungpecc1, đúng yêu cầu của mình rồi. Chắc là phải tìm hiểu VBA nhiều hơn.
À bạn ơi chỗ bạn tô màu vàng cho phần IMEI sai, nó bị tô màu sai, mình sữa lại i+2 thì OK.
Thanks bạn một lần nữa.
 
Lần chỉnh sửa cuối:
Upvote 0
Mình dùng hàm countif đơn giản, bạn xem có được ko nhé
 

File đính kèm

  • Book1.xlsx
    10.9 KB · Đọc: 5
Upvote 0
P/S: học lập trình bắt đầu từ đâu bạn ơi??? đọc GPE thì thấy bao la rộng lớn quá...
Bạn tìm tài liệu vba trên diễn đàn về ngâm cứu thôi ^^, GPE như đại dương, mình cũng chỉ bập bõm ở ven biển, đủ để nổi , không bị chìm thôi, --> kek ..kek <-------+*/
 
Upvote 0
Web KT
Back
Top Bottom