Nhờ hỗ trợ tách các nội dung sau dấu chấm phẩy

Liên hệ QC

yealeef

Thành viên mới
Tham gia
30/1/20
Bài viết
22
Được thích
6
Nhờ mọi người xem giúp em cách tách các nội dung ở mỗi dấu chấm phẩy thành từng dòng riêng như từ cột J sang cột K trong file, cho mỗi số thứ tự từ 1-100
Em cám ơn mọi người trước ạ!Ảnh chụp Màn hình 2020-02-12 lúc 23.11.03.png
 

File đính kèm

  • Tach_saudauchamphay.xlsx
    51.2 KB · Đọc: 9
Nhờ mọi người xem giúp em cách tách các nội dung ở mỗi dấu chấm phẩy thành từng dòng riêng như từ cột J sang cột K trong file, cho mỗi số thứ tự từ 1-100
Em cám ơn mọi người trước ạ!View attachment 231908
Bạn thử xem công thức sau
Công thức tại L1
Mã:
=TRIM(MID(SUBSTITUTE(","&J2,",",REPT(" ",LEN(J2))),LEN(J2)*1,LEN(J2)))
Công thức tại L2
Mã:
=TRIM(MID(SUBSTITUTE(","&J3,",",REPT(" ",LEN(J3))),LEN(J3)*2,LEN(J3)))
Công thức lại L3
Mã:
=TRIM(MID(SUBSTITUTE(","&J3,",",REPT(" ",LEN(J3))),LEN(J3)*3,LEN(J3)))
Công thức tại L4
Mã:
=TRIM(MID(SUBSTITUTE(","&J3,",",REPT(" ",LEN(J3))),LEN(J3)*4,LEN(J3)))
 
Nhờ mọi người xem giúp em cách tách các nội dung ở mỗi dấu chấm phẩy thành từng dòng riêng như từ cột J sang cột K trong file, cho mỗi số thứ tự từ 1-100
Em cám ơn mọi người trước ạ!
Hơn 24 giờ qua và đã có 14 thành viên đọc bài nhưng chưa thấy ai góp ý cho bạn, vì vậy tôi có ý kiến như sau:
1/ Mỗi ngày khám bảo hiểm có thể vài trăm người, bạn nhập liệu xong 1 dòng lại Copy ra 7 dòng như bạn đã làm thủ công chắc là sẽ hết hơi.
2/ Khám bảo hiểm thì rất nhiều mà dùng hàm chắc không kham nổi, bạn nên sử dụng VBA để nhập liệu nội dung mỗi người khám là 1 dòng vào 1 sheet theo dõi để thuận tiện cho việc tổng hợp, báo cáo.
3/ Dựa vào sheet theo dõi lấy dữ liệu sang sheet khác rồi căn cứ vào nội dung cột J để tách mỗi dấu chấm phẩy thành từng dòng riêng.

Nếu bạn muốn sử dụng VBA thì nhắn tin nhờ ban quản trị chuyển bài qua Box Lập trình với Excel, sử dụng VBA thì công việc sẽ nhẹ nhàng hơn chỉ việc nhấn nút là xong.
 
Trong file chỉ có dấu phẩy, không có chấm phẩy.
Bạn có thể tham khảo kết quả trong file, chỉ cần 1 cái bấm vô nút trên trang tính

Chúc mùa xuân tràn trề niềm vui với mọi người!

(Xin bổ sung câu lệnh:)
PHP:
Dim Arr() As String:                            Dim W As Integer
Sub TachThuoc()
 Dim J As Long, Rws As Long, STT As Long, Off As Integer
 Dim ThuocDT As String
 With Sheet1
    Rws = .[B2].CurrentRegion.Rows.Count
 End With
 For J = 2 To Rws
    If STT <> Cells(J, "A").Value Then
        ThuocDT = Cells(J, "J").Value:                  W = 0
        If Cells(J, "K").Value <> "" Then Off = 1 Else Off = 0  'Dòng Lênh Bô Sung.'
        Cells(J, "K").Offset(, Off).Resize(W).Value = TachTDT(ThuocDT)
        STT = Cells(J, "A").Value
    Else
    End If
 Next J
End Sub
Mã:
Function TachTDT(STrC As String)
 Dim VTr As Integer:                             ReDim Arr(1 To 13, 1 To 1)
 
 Do
    VTr = InStr(STrC, ",")
    If VTr > 1 Then
        W = W + 1:                                  Arr(W, 1) = Left(STrC, VTr - 1)
        STrC = Mid(STrC, VTr + 1, Len(STrC))
    Else
        TachTDT = Arr():        Exit Function
    End If
 Loop
End Function
 

File đính kèm

  • GPE.rar
    37.8 KB · Đọc: 13
Lần chỉnh sửa cuối:
Hơn 24 giờ qua và đã có 14 thành viên đọc bài nhưng chưa thấy ai góp ý cho bạn, vì vậy tôi có ý kiến như sau:
1/ Mỗi ngày khám bảo hiểm có thể vài trăm người, bạn nhập liệu xong 1 dòng lại Copy ra 7 dòng như bạn đã làm thủ công chắc là sẽ hết hơi.
2/ Khám bảo hiểm thì rất nhiều mà dùng hàm chắc không kham nổi, bạn nên sử dụng VBA để nhập liệu nội dung mỗi người khám là 1 dòng vào 1 sheet theo dõi để thuận tiện cho việc tổng hợp, báo cáo.
3/ Dựa vào sheet theo dõi lấy dữ liệu sang sheet khác rồi căn cứ vào nội dung cột J để tách mỗi dấu chấm phẩy thành từng dòng riêng.

Nếu bạn muốn sử dụng VBA thì nhắn tin nhờ ban quản trị chuyển bài qua Box Lập trình với Excel, sử dụng VBA thì công việc sẽ nhẹ nhàng hơn chỉ việc nhấn nút là xong.
Không trả lời vì khó quá... ko giúp bạn ý dc...
 
Web KT

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

Back
Top Bottom