Em chào các anh chị!
Em có sub Tach các mã số tại sheet "Du lieu vao" sang sheet "C1C2", em nhờ anh chị thêm vào code phần sắp xếp sao cho các mã có cùng ngày và cùng phần mã số thì ở gần nhau. Các anh chị xem trong file đính kèm giúp em ạ.
Em cảm ơn nhiều!
Tạm thời lọc ra thêm 2 cột phụ, Sort theo 2 cột phụ xong thì xoá 2 cột phụ này.
Dựa vào code của bạn:
[GPECODE=vb]Public Sub Tach()
Dim Arr(), sArr(), I As Long, J As Long, K As Long
With Sheets("Du lieu vao")
Arr = .Range(.[A4], .[A65000].End(xlUp)).Resize(, 14).Value
ReDim sArr(1 To UBound(Arr, 1), 1 To 17)
For I = 1 To UBound(Arr, 1)
If UCase(Left(Arr(I, 1), 2)) = "C1" Or UCase(Left(Arr(I, 1), 2)) = "C2" Then
K = K + 1
For J = 1 To 14
sArr(K, 1) = K
sArr(K, J + 1) = Arr(I, J)
Next J
sArr(K, 16) = Mid(Arr(I, 1), 10, 5)
sArr(K, 17) = Mid(Arr(I, 1), 4, 5)
End If
Next I
End With
With Sheets("C1C2")
.[A10:O10000].ClearContents
If K Then
.[A10].Resize(K, 17).Value = sArr
.[B10].Resize(K, 16).Sort Key1:=.[P10], Key2:=.[Q10]
.[P10:Q10].Resize(K).ClearContents
End If
End With
End Sub[/GPECODE]
Sheet Du lieu vao, ô A53 dữ liệu nhập không giống ai.