Cần tách số từ dãy số ngăn cách bởi các dấu phẩy, sau đó xếp từng số vào các ô tương ứng (2 người xem)

  • Thread starter Thread starter LINHCM
  • Ngày gửi Ngày gửi
Liên hệ QC

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

Tôi tuân thủ nội quy khi đăng bài

LINHCM

Thành viên mới
Tham gia
10/8/24
Bài viết
40
Được thích
6
Em xin chào các anh chị chú bác quản trị Web: www.giaiphapexcel.com. Em chào các anh chị cộng đồng excel của mình.
Em đang gặp vấn đề như thế này:
Em cần tách các số từ một dãy các số ngăn cách bởi dấu phẩy (như số trong ô màu xanh, hình đính kèm), sau đó lấy kết quả tách từng số vào từng ô liên tiếp từ trái qua phải (như số trong các ô màu vàng).
Em xin nhờ các anh chị chỉ điểm, em cảm ơn rất nhiều!tach so.jpg
 

File đính kèm

Em xin chào các anh chị chú bác quản trị Web: www.giaiphapexcel.com. Em chào các anh chị cộng đồng excel của mình.
Em đang gặp vấn đề như thế này:
Em cần tách các số từ một dãy các số ngăn cách bởi dấu phẩy (như số trong ô màu xanh, hình đính kèm), sau đó lấy kết quả tách từng số vào từng ô liên tiếp từ trái qua phải (như số trong các ô màu vàng).
Em xin nhờ các anh chị chỉ điểm, em cảm ơn rất nhiều!View attachment 306006
Bạn thử tham khảo. .
 

File đính kèm

Thêm 1 vài cách có thể tham khảo
(1) Nếu bạn chủ bài đăng đang sở hữu E365 thì xài hàm TextSplit, như:
Ở 1 ô trống nào đó ví dụ [C9] ta gõ cú pháp =TEXTSPLIT(C3,",")
(2) Viết 1 hàm tự tạo có nội dung:
PHP:
Function TachSo(Rng As Range) As Variant
 Dim VTr As Byte, W As Integer
 ReDim Arr(1 To 1, 1 To 99) As String
 Dim Tmp As String

 Tmp = Rng.Value & ","
 Do
    VTr = InStr(Tmp, ",")
    If VTr < 1 Then
        Exit Do
    Else
        W = W + 1:      Arr(1, W) = CInt(Left(Tmp, VTr - 1))
        Tmp = Mid(Tmp, VTr + 1, Len(Tmp))
    End If
 Loop
 TachSo = Arr()
End Function
Cách sử dụng như sau:
Lấy chuột chọn 1 dẫy ô trống (như [C7:W7])
Bấm chuột lên thanh công thức & viết cú pháp =TachSo(C3)
& lưu ý kết thúc bỡi tổ hợp phím dành cho hàm mảng!
 
Cảm ơn bạn rất nhiều, mình áp dụng bạn hướng dẫn thành công rồi.
Bài đã được tự động gộp:

Thêm 1 vài cách có thể tham khảo
(1) Nếu bạn chủ bài đăng đang sở hữu E365 thì xài hàm TextSplit, như:
Ở 1 ô trống nào đó ví dụ [C9] ta gõ cú pháp =TEXTSPLIT(C3,",")
(2) Viết 1 hàm tự tạo có nội dung:
PHP:
Function TachSo(Rng As Range) As Variant
 Dim VTr As Byte, W As Integer
 ReDim Arr(1 To 1, 1 To 99) As String
 Dim Tmp As String

 Tmp = Rng.Value & ","
 Do
    VTr = InStr(Tmp, ",")
    If VTr < 1 Then
        Exit Do
    Else
        W = W + 1:      Arr(1, W) = CInt(Left(Tmp, VTr - 1))
        Tmp = Mid(Tmp, VTr + 1, Len(Tmp))
    End If
 Loop
 TachSo = Arr()
End Function
Cách sử dụng như sau:
Lấy chuột chọn 1 dẫy ô trống (như [C7:W7])
Bấm chuột lên thanh công thức & viết cú pháp =TachSo(C3)
& lưu ý kết thúc bỡi tổ hợp phím dành cho hàm mảng!
Cảm ơn bạn nhiều nhé!
 
Chỉ cần text to column. Trước đó phải bỏ merge cell.
 

File đính kèm

Web KT

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

Back
Top Bottom