[Giúp] Viết Code tìm kiếm vật tư dựa vào mã vật tư, tên vật tư, Serial trong Sheet dữ liệu (1 người xem)

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

Người dùng đang xem chủ đề này

quyenpv

Thu nhặt kiến thức
Tham gia
5/1/13
Bài viết
729
Được thích
97
Giới tính
Nam
Nghề nghiệp
Decode cuộc đời!
Dear các anh chị!
Hiện em có file dữ liệu kiểm kê tài sản cuối năm cần xử lý dữ liệu mà máy treo liên tục, dữ liệu thật 32.738 dòng. Mỗi lần em filter là treo không thể thao tác được
Em nhờ anh chị viết giúp code có thể đánh mã vật tư, tên vật tư, Serial tại Sheet Tìm kiếm có thể lấy dữ liệu trong Sheet Database theo bảng như sau
Mong anh chị giúp đỡ, cám ơn vạn lần




TÌM KIẾM













Input

21021127229T9A001189













Mã danh mục

Tên Danh mục

ĐVT

Số lượng

Mã trạm

Tình trạng

Đơn giá

Thành tiền
















 

File đính kèm

Bạn xài thử macro sự kiện này tại trang 'TimKiem':
PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
 If Not Intersect(Target, [c2]) Is Nothing Then
    Dim Rws As Long, J As Long, W As Integer, Tmr As Double
    Dim Arr()
    ReDim rArr(1 To 99, 1 To 9)
    
    [A4:i99].Value = rArr():                        Tmr = Timer()
    With Sheets("Database")
        Rws = .[b6].CurrentRegion.Rows.Count
        Arr() = .[b7].Resize(Rws, 18).Value
    End With
    For J = 1 To UBound(Arr())
        If Arr(J, 5) = Target.Value Then
            W = W + 1:                              rArr(W, 1) = W
            rArr(W, 2) = Arr(J, 1):                 rArr(W, 3) = Arr(J, 2)
            rArr(W, 4) = Arr(J, 4):                 rArr(W, 5) = Arr(J, 7)  '? '
            rArr(W, 6) = Arr(J, 9)
            rArr(W, 7) = IIf(Arr(J, 9) > 0, "OK", "-")
            rArr(W, 8) = Arr(J, 15):                rArr(W, 9) = "GPE.COM"
        End If
    Next J
    If W Then
        [A4].Resize(W, 9).Value = rArr():       [f2].Value = Timer() - Tmr
    Else
        [f2].Value = "Nothing!"
    End If
 End If
End Sub
 
Upvote 0
Bạn xài thử macro sự kiện này tại trang 'TimKiem':
PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, [c2]) Is Nothing Then
    Dim Rws As Long, J As Long, W As Integer, Tmr As Double
    Dim Arr()
    ReDim rArr(1 To 99, 1 To 9)
   
    [A4:i99].Value = rArr():                        Tmr = Timer()
    With Sheets("Database")
        Rws = .[b6].CurrentRegion.Rows.Count
        Arr() = .[b7].Resize(Rws, 18).Value
    End With
    For J = 1 To UBound(Arr())
        If Arr(J, 5) = Target.Value Then
            W = W + 1:                              rArr(W, 1) = W
            rArr(W, 2) = Arr(J, 1):                 rArr(W, 3) = Arr(J, 2)
            rArr(W, 4) = Arr(J, 4):                 rArr(W, 5) = Arr(J, 7)  '? '
            rArr(W, 6) = Arr(J, 9)
            rArr(W, 7) = IIf(Arr(J, 9) > 0, "OK", "-")
            rArr(W, 8) = Arr(J, 15):                rArr(W, 9) = "GPE.COM"
        End If
    Next J
    If W Then
        [A4].Resize(W, 9).Value = rArr():       [f2].Value = Timer() - Tmr
    Else
        [f2].Value = "Nothing!"
    End If
End If
End Sub
Anh code thêm giúp em vừa có thể tìm theo mã vật tư hoặc tên vật tư được không ạ. Cám ơn anh!
 
Upvote 0
Mã vật tu của bạn chưa thể xài được trong công cuộc tìm kiếm; Tạm thời chỉ là vầy:
 
Upvote 0
Chỉ cần thêm kí tự "_" vô mã DM, thì ta có thể thoải mái tìm kiếm theo 1 trong 3 tiêu chi tùy nghi!

(Hơn 1 giờ sau mình sẽ tháo file bài trên)
 

File đính kèm

Upvote 0
Upvote 0
Web KT

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

Back
Top Bottom