Em có 1 chuỗi ký tự cho trước muốn lọc ra từng loại ký tự nhưng trong chuỗi ký tự kia lại có những số lượng ký tự thay đổi chứ ko cố định nên em ko thể làm được, mong các bác giúp đỡ em với ạ. file em gửi kèm. em xin cảm ơn rất nhiều
sao bạn k dùng text 2 columns cho nhanh.Em có 1 chuỗi ký tự cho trước muốn lọc ra từng loại ký tự nhưng trong chuỗi ký tự kia lại có những số lượng ký tự thay đổi chứ ko cố định nên em ko thể làm được, mong các bác giúp đỡ em với ạ. file em gửi kèm. em xin cảm ơn rất nhiều
Thử 1 cách không phải là hàm:Em có 1 chuỗi ký tự cho trước muốn lọc ra từng loại ký tự nhưng trong chuỗi ký tự kia lại có những số lượng ký tự thay đổi chứ ko cố định nên em ko thể làm được, mong các bác giúp đỡ em với ạ. file em gửi kèm. em xin cảm ơn rất nhiều
Sub abc()
Dim St, Cll As Range, j&
On Error Resume Next
For Each Cll In Range("A5", Cells(Rows.Count, "A").End(3))
For j = 1 To 8
With Cll
.Offset(, j) = Split(.Value, ".")(j)
End With
Next
Cll.Offset(, 9) = Split(Cll, ".")(10)
Next
End Sub
Là như thế nào hả bác, e gà lắmsao bạn k dùng text 2 columns cho nhanh.
Không dùng được flash fill bác ạ vì đoạn mã gốc thay đổi chứ ko cố định ạ, e muốn khi cần là copy đoạn mã gốc vào thì nó tự chia luônCách 1: Flash Fill (tốn cỡ 20 giây cuộc đời).
Cách 2: ...
Thank bác để tí em mở trên máy tínhThử 1 cách không phải là hàm:
PHP:Sub abc() Dim St, Cll As Range, j& On Error Resume Next For Each Cll In Range("A5", Cells(Rows.Count, "A").End(3)) For j = 1 To 8 With Cll .Offset(, j) = Split(.Value, ".")(j) End With Next Cll.Offset(, 9) = Split(Cll, ".")(10) Next End Sub
Thử bằng công thức:Em có 1 chuỗi ký tự cho trước muốn lọc ra từng loại ký tự nhưng trong chuỗi ký tự kia lại có những số lượng ký tự thay đổi chứ ko cố định nên em ko thể làm được, mong các bác giúp đỡ em với ạ. file em gửi kèm. em xin cảm ơn rất nhiều
B5=MID(LEFT($A5,FIND("|",SUBSTITUTE($A5,".","|",B$2+1+(B$2=9)))-1),FIND("|",SUBSTITUTE($A5,".","|",B$2+(B$2=9)))+1,100)
Hoặc
B5=TRIM(MID(SUBSTITUTE($A5,".",REPT(" ",100)),(B$2+(B$2=9))*100+1,100))
Hàm của anh Phan Thế Hiệp rất hay, bạn tham khảo ý tưởng thuật toán cũng như học cách sử dụng kết hợp các hàm.Là như thế nào hả bác, e gà lắm
Bác ơi, bản chính xác em muốn hỏi em để ở file đính kèm bác xem giúp em với, em cảm ơn bác nhiều lắm. Bác có thể bớt chút thời gian cho em xin ít tài liệu về vba không ạ, em rất thích nhưng ko biết bắt đầu từ đâuLà như thế nào hả bác, e gà lắm
Bài đã được tự động gộp:
Không dùng được flash fill bác ạ vì đoạn mã gốc thay đổi chứ ko cố định ạ, e muốn khi cần là copy đoạn mã gốc vào thì nó tự chia luôn
Bài đã được tự động gộp:
Thank bác để tí em mở trên máy tính
Em không dùng cách này được vì dữ liệu gốc thay đổi liên ạ, em muốn là cứ copy dữ liệu gốc vào bảng có sẵn là nó sẽ lọc ra từng thành phần nhỏ ạHàm của anh Phan Thế Hiệp rất hay, bạn tham khảo ý tưởng thuật toán cũng như học cách sử dụng kết hợp các hàm.
Nếu dữ liệu quá lớn, sử dụng hàm quá nhiều gây nặng file bạn có thể tham khảo cách như hình đính kèm
Trong dữ liệu của bạn cần tách có 1 số dữ liệu có số 0 ở đầu, nếu cần giữ thì bạn chọn format cho các column là text.
HTH
Bác ơi, hàm này làm sao em chuyển được sang file gốc này bác nhỉ, vì em ko hiểu hàm đâm ra toàn báo lỗiThử bằng công thức:
Enter, Fill qua phải, rồi fill cả hàng xuống.Mã:B5=MID(LEFT($A5,FIND("|",SUBSTITUTE($A5,".","|",B$2+1+(B$2=9)))-1),FIND("|",SUBSTITUTE($A5,".","|",B$2+(B$2=9)))+1,100) Hoặc B5=TRIM(MID(SUBSTITUTE($A5,".",REPT(" ",100)),(B$2+(B$2=9))*100+1,100))
Xem file kèm.
Thân.
Bạn phải bỏ Merge cell đi. Ai lại để hòa ô tùm lum như vậy. Làm việc với excel hạn chế hòa ô thôi.Bác ơi, hàm này làm sao em chuyển được sang file gốc này bác nhỉ, vì em ko hiểu hàm đâm ra toàn báo lỗi
"là nó sẽ lọc ra từng thành phần nhỏ ạ" thì cũng phải có cái gì đó để biết khi nào bạn muốn nó lọc.Em không dùng cách này được vì dữ liệu gốc thay đổi liên ạ, em muốn là cứ copy dữ liệu gốc vào bảng có sẵn là nó sẽ lọc ra từng thành phần nhỏ ạ
Lâu quá mới thấy em vào chơi.Bạn phải bỏ Merge cell đi. Ai lại để hòa ô tùm lum như vậy. Làm việc với excel hạn chế hòa ô thôi.
Dùng thêm "Hàng phụ" 10.Bác ơi, hàm này làm sao em chuyển được sang file gốc này bác nhỉ, vì em ko hiểu hàm đâm ra toàn báo lỗi
Dạ lâu rồi em bỏ công việc bàn giấy. Nên ko còn dùng đến excel nữa. Nay bắt đầu lại về văn phòng mới vào diễn đàn học hỏi tiếp anh à.Lâu quá mới thấy em vào chơi.
Chúc em ngày vui.
Thân
"là nó sẽ lọc ra từng thành phần nhỏ ạ" thì cũng phải có cái gì đó để biết khi nào bạn muốn nó lọc.
Bấm nút được không?
Bảng kết quả toàn các ô "lí nhí" merge lại, nhìn muốn "đui con mắt".
Của bác làm chuẩn men luôn, hi hi, tại tính chính công việc nên em phải làm các ô "lí nhí" ấy. Em cảm ơn bác nhé"là nó sẽ lọc ra từng thành phần nhỏ ạ" thì cũng phải có cái gì đó để biết khi nào bạn muốn nó lọc.
Bấm nút được không?
Bảng kết quả toàn các ô "lí nhí" merge lại, nhìn muốn "đui con mắt".
Cách của bác rất hay, em sẽ ngồi phân tích lại hàm bác dùng, lúc sáng em thử dùng hàm bác đánh sẵn vào bảng cũ cho sang bảng mới mà ko đượcLâu quá mới thấy em vào chơi.
Chúc em ngày vui.
Dùng thêm "Hàng phụ" 10.
Xem file kèm.
Thân
A12=MID(BC12,4,4)
...
O12=MID(BC12,24,LEN(BC12)-49)
S12=LEFT(RIGHT(BC12,25),3)
...
Hàm của anh Phan Thế Hiệp rất hay, bạn tham khảo ý tưởng thuật toán cũng như học cách sử dụng kết hợp các hàm.
Nếu dữ liệu quá lớn, sử dụng hàm quá nhiều gây nặng file bạn có thể tham khảo cách như hình đính kèm
Trong dữ liệu của bạn cần tách có 1 số dữ liệu có số 0 ở đầu, nếu cần giữ thì bạn chọn format cho các column là text.
HTH
2 nhà phát triển khác nhau mà bạn. Kiểu như bạn thấy ngta dùng điện thoại có Spen nhưng mua Iphone về lại thắc mắc không có ấyEm đã thử cách của anh & done ngay cái file cần lọc của em đơn giản hơn khá nhiều so với chi tiết của chủ thớt....
Chỉ cần thêm cái "ký hiệu giữa dãy số" là ra keke
Trên excel bảng tính của google em thấy có hàm Regexextract gì đó lọc cũng khá hay mà sao thử ở excel 2016 lại ko thấy hàm đó vậy các anh??
2 nhà phát triển khác nhau mà bạn. Kiểu như bạn thấy ngta dùng điện thoại có Spen nhưng mua Iphone về lại thắc mắc không có ấy
Regex M$ đưa vào VBA.
Mình cũng không rànhOh, Cảm ơn a..."bây giờ thì em đã hiểu"
P.S: VBA e không biết dùng...![]()
Mình cũng không rành. Công việc hiện tại chỉ cần căn chỉnh in ấn cơ bản nên cũng chưa nghĩ tới việc học.
Nếu công việc của bạn hay đụng đến những vấn đề xử lí phức tạp mà hàm không/mất thời gian để giải quyết thì nên học, diễn đàn cũng có sách đấy bạn.