nguyensatran
Thành viên mới

- Tham gia
- 13/8/19
- Bài viết
- 39
- Được thích
- 13
Dữ liệu của bạn không đồng nhất 2 cột mà cũng không phải là chia theo xuống dòng.Bạn xem lại nhé.Còn code mình viết đây.
Mã:Sub tach() Dim arr, i As Long, lr As Long, T, kq, a As Long, R As Long, L As Long, T1, k As Integer, j As Integer With Sheets("nguon") lr = .Range("B" & Rows.Count).End(xlUp).Row If lr = 1 Then Exit Sub arr = .Range("B5:O" & lr).Value R = UBound(arr) L = UBound(arr, 2) If R * 10 > Rows.Count Then a = Rows.Count Else a = R * 10 ReDim kq(1 To a, 1 To L) a = 0 End With For i = 1 To R T = Split(Chr(10) & arr(i, 9), Chr(10)) ' T1 = Split(Chr(10) & arr(i, 10), Chr(10)) For k = 1 To UBound(T) If Len(T(k)) > 0 Then a = a + 1 For j = 1 To L kq(a, j) = arr(i, j) Next j kq(a, 9) = T(k) 'kq(a, 10) = T1(k) End If Next k Next i With Sheets("cach2") lr = .Range("B" & Rows.Count).End(xlUp).Row If lr > 4 Then .Range("B5:O" & lr).ClearContents If a Then .Range("B5:o5").Resize(a).Value = kq End With End Sub
Cám ơn anh đã giúp em
Do em mới vào công ty và được bàn giao dữ liệu yêu cầu tách dòng ở 2 cột "tô xanh trong file", vì dữ liệu vài ngàn dòng nên em làm thủ công không được chưa kể là dễ gây sai số. Liệu có cách nào tách đồng thời cả 2 cột được không ạ? Ngoài ra đây là dữ liệu không chính thức nên anh có thể bôi vàng những chỗ nào cần thay đổi nếu áp dụng file khác được không anh?