Góp ý cho bạn:Các bác hướng dẫn em xử lý cái này với ạ. Em cảm ơn các bác
Bạn thử code sau nhé:
Sub SplitChar10()
Dim arr As Variant, cll As Range
For Each cll In Range("B2:B3")
If InStr(1, cll, Chr(10)) <> 0 Then
arr = Split(cll, Chr(10))
cll.EntireRow.Copy
cll.Offset(1, 0).Resize(UBound(arr), 1).EntireRow.Insert (xlShiftDown)
cll.Resize(UBound(arr) + 1, 1) = Application.Transpose(arr)
End If
Next
Application.CutCopyMode = False
End Sub
Góp ý cho bạn:Các bác hướng dẫn em xử lý cái này với ạ. Em cảm ơn các bác
ĐC RỒI BÁC ƠI, CẢM ƠN BÁC NHIỀU ẠBạn thử code sau nhé:
Mã:Sub SplitChar10() Dim arr As Variant, cll As Range For Each cll In Range("B2:B3") If InStr(1, cll, Chr(10)) <> 0 Then arr = Split(cll, Chr(10)) cll.EntireRow.Copy cll.Offset(1, 0).Resize(UBound(arr), 1).EntireRow.Insert (xlShiftDown) cll.Resize(UBound(arr) + 1, 1) = Application.Transpose(arr) End If Next Application.CutCopyMode = False End Sub
Nó copy nguyên cả dòng đưa xuống mà anh. Đâu ảnh hưởng đến cột khác.Góp ý cho bạn:
1/ Nên Copy Sheet1 sang Sheet2 rồi tách để có cái mà đối chiếu hoặc kiểm tra lại.
2/ Dữ liệu thực tế của bạn có thể có nhiều cột, nhiều dòng, nhưng File bạn chỉ có 2 cột và 2 dòng thì tôi e rằng code bài 2 sẽ không đáp ứng được yêu cầu thực tế của bạn.
Thớt có nhiều bài về số điện thoại lắm.Đây là chủ đề tương tự, có code và hàm có thể sử dụng linh hoạt.
...
ĐC RỒI BÁC ƠI, CẢM ƠN BÁC NHIỀU Ạ