Giúp code tách chuỗi sang cột mới (1 người xem)

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

tuanminh_t2

Thành viên mới
Tham gia
26/10/10
Bài viết
20
Được thích
1
Em hiện đang gặp vấn đề với việc tách chuỗi dữ liệu sang cột mới. Trong file đính kèm, em cần tách chuỗi tại A1,A2 sang vùng B3:D4. Các pro giúp em tìm ra giải pháp với ạ.
Em cảm ơn.
 

File đính kèm

Em hiện đang gặp vấn đề với việc tách chuỗi dữ liệu sang cột mới. Trong file đính kèm, em cần tách chuỗi tại A1,A2 sang vùng B3:D4. Các pro giúp em tìm ra giải pháp với ạ.
Em cảm ơn.
PHP:
Sub tach()
Dim data(), res(), i, n, tem, item
data = Range([A1], [A65536].End(3)).Value
ReDim res(1 To UBound(data), 1 To 1)
For i = 1 To UBound(data)
   tem = Split(data(i, 1), Space(2))
   n = 0
   For Each item In tem
      If item <> "" Then
         n = n + 1
         If n > UBound(res, 2) Then
            ReDim Preserve res(1 To UBound(data), 1 To n)
         End If
         res(i, n) = item
      End If
   Next
Next
[B1].Resize(i - 1, Ubound(Res,2)) = res
End Sub
 
Lần chỉnh sửa cuối:
Upvote 0
Em hiện đang gặp vấn đề với việc tách chuỗi dữ liệu sang cột mới. Trong file đính kèm, em cần tách chuỗi tại A1,A2 sang vùng B3:D4. Các pro giúp em tìm ra giải pháp với ạ.
Em cảm ơn.
Công thức :
B1 :
PHP:
=TRIM(LEFT(A1,FIND(" ",A1,FIND(" ",A1)+1)))
C1 :
PHP:
=TRIM(MID(TRIM(A1),FIND(" ",TRIM(A1),LEN(B1)+1),FIND(" ",TRIM(A1),FIND(" ",TRIM(A1),LEN(B1)+1)+1)-LEN(B1)))
D1 :
PHP:
=TRIM(RIGHT(SUBSTITUTE(A1," ",REPT(" ",LEN(A1))),LEN(A1)))
Hoặc B1 :
PHP:
=LEFT(TRIM(SUBSTITUTE(TRIM(A1),B1,"")),FIND(" ",TRIM(SUBSTITUTE(TRIM(A1),B1,""))))
- ngắn hơn 1 xíu
====================
Hoặc thế này cho B1 rồi kéo cả cho C1 (test cho dữ liệu mẫu)
PHP:
=TRIM(MID(SUBSTITUTE(TRIM($A1)," ",REPT(" ",LEN(TRIM($A1)))),COLUMN(C1)*LEN(TRIM($A1))-LEN(TRIM($A1))+1,LEN(TRIM($A1))))
 
Lần chỉnh sửa cuối:
Upvote 0

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

Back
Top Bottom