Lọc dữ liệu theo nhiều điều kiện (2 người xem)

Liên hệ QC

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

Falycomi123456

Thành viên mới
Tham gia
13/12/18
Bài viết
3
Được thích
1
Mình cần tìm và lấy ra các mã sản phẩm (bao gồm chữ và số) trong cột nội dung (vì khi thanh toán đơn hàng, khách hàng không nhập theo đúng quy tắc nền giờ lộ xôn không thể thống kê được. Các pro hỗ trợ giúp. File ví dụ đính kèm
Xin cảm ơn
 

File đính kèm

Mình cần tìm và lấy ra các mã sản phẩm (bao gồm chữ và số) trong cột nội dung (vì khi thanh toán đơn hàng, khách hàng không nhập theo đúng quy tắc nền giờ lộ xôn không thể thống kê được. Các pro hỗ trợ giúp. File ví dụ đính kèm
Xin cảm ơn
Bạn chạy thử code này xem sao
Mã:
Sub Tach_()
Dim Nguon, Dong As Long
Dim Chuoi, Mang
Dim Kq
Dim i, j, k
With Sheet1
    Nguon = .Range("b3", .Range("b3").End(xlDown))
    Dong = UBound(Nguon)
    ReDim Kq(1 To Dong, 1 To 3)
    For i = 1 To Dong
        Chuoi = Replace(Nguon(i, 1), ",", "")
        Mang = Split(Chuoi)
        For j = UBound(Mang) To 0 Step -1
            If IsNumeric(Mang(j)) = True Then
                Kq(i, 1) = Mang(j)
                Exit For
            End If
        Next j
        k = InStr(Nguon(i, 1), Kq(i, 1)) + Len(Kq(i, 1))
        Chuoi = Trim(Right(Nguon(i, 1), Len(Nguon(i, 1)) - k))
        Mang = Split(Chuoi, ",")
        Kq(i, 2) = Right(Mang(0), Len(Mang(0)) - InStrRev(Mang(0), " "))
        If UBound(Mang) = 1 Then
            Kq(i, 3) = Right(Mang(1), Len(Mang(1)) - InStrRev(Mang(1), " "))
        End If
    Next i
    .Range("g3").Resize(UBound(Kq), UBound(Kq, 2)).ClearContents
    .Range("g3").Resize(UBound(Kq), UBound(Kq, 2)) = Kq
End With
End Sub
 
Không biết chủ thớt có đưa thêm dữ liệu khách hàng gõ "lộ xôn" như thế này nữa không:
"THANH TOAN TIEN CON LAI CUA DOT SO 2 CUA SAN PHAM SO 17 LO G 18, D4"
"THANH TOAN TIEN CON LAI CUA DOT SO 2 CUA SAN PHAM SO 17 LO G 18, D 4"
"THANH TOAN TIEN CON LAI CUA DOT SO 2 CUA SAN PHAM SO17 LO G 18, D 4"
Tốt hơn là hướng khách hàng gõ đúng yêu cầu 4 cột:
- Nội dung thanh toán
- Sản phẩm
- Số lô
- Khu vực
 
Mình cần tìm và lấy ra các mã sản phẩm (bao gồm chữ và số) trong cột nội dung (vì khi thanh toán đơn hàng, khách hàng không nhập theo đúng quy tắc nền giờ lộ xôn không thể thống kê được. Các pro hỗ trợ giúp. File ví dụ đính kèm
Xin cảm ơn
Bạn thiết kế dữ liệu theo dõi chưa hợp lý, tham khảo File.
Nếu muốn lọc nhiều điều kiện thì thêm 1 sheet rồi sử dụng Advanced Filter (với VBA).
 

File đính kèm

Lần chỉnh sửa cuối:
Bạn chạy thử code này xem sao
Mã:
Sub Tach_()
Dim Nguon, Dong As Long
Dim Chuoi, Mang
Dim Kq
Dim i, j, k
With Sheet1
    Nguon = .Range("b3", .Range("b3").End(xlDown))
    Dong = UBound(Nguon)
    ReDim Kq(1 To Dong, 1 To 3)
    For i = 1 To Dong
        Chuoi = Replace(Nguon(i, 1), ",", "")
        Mang = Split(Chuoi)
        For j = UBound(Mang) To 0 Step -1
            If IsNumeric(Mang(j)) = True Then
                Kq(i, 1) = Mang(j)
                Exit For
            End If
        Next j
        k = InStr(Nguon(i, 1), Kq(i, 1)) + Len(Kq(i, 1))
        Chuoi = Trim(Right(Nguon(i, 1), Len(Nguon(i, 1)) - k))
        Mang = Split(Chuoi, ",")
        Kq(i, 2) = Right(Mang(0), Len(Mang(0)) - InStrRev(Mang(0), " "))
        If UBound(Mang) = 1 Then
            Kq(i, 3) = Right(Mang(1), Len(Mang(1)) - InStrRev(Mang(1), " "))
        End If
    Next i
    .Range("g3").Resize(UBound(Kq), UBound(Kq, 2)).ClearContents
    .Range("g3").Resize(UBound(Kq), UBound(Kq, 2)) = Kq
End With
End Sub
Cảm ơn bạn, nhưng code này minh chạy không ra bạn ơi. Bạn giúp mình add-in code vào thử có chạy được không vì mình làm nó không chạy... cảm ơn bạn nhiều
 

File đính kèm

Web KT

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

Back
Top Bottom