Tách dữ liệu trong ô thành nhiều dòng.

  • Thread starter Thread starter HA7
  • Ngày gửi Ngày gửi
Liên hệ QC
...Về vấn đề này, xin các tiền bối có thể chia sẻ cho hậu bối phương pháp học và cách tư duy như thế nào để viết code có hiệu quả hơn không nhỉ. Học được cái này rất có ích để ứng dụng cho thực tế.
tiền bối: có tiền mới có bửu bối
hậu bối: bửu bối phải hậu hĩnh.
 
  • Thích
Reactions: HA7
tiền bối: có tiền mới có bửu bối
hậu bối: bửu bối phải hậu hĩnh.
Gừng càng già càng cay. Đọc thơ của anh thật vừa thấm vừa hay.
Bài đã được tự động gộp:

link này chưa cài đặt chia sẻ công khai nên không xem được
Nhờ anh hướng dẫn chỗ này nên xử lý thế nào nhỉ.
 
Bạn ơi, cài hàm đó thì mình làm ok rồi. Vấn đề là không biết dùng cái hàm đó thôi; hàm có 3 tham số, mà chẳng biết điền như thế nào?
Cái này đâu càn nhập tham số gì đâu bạn, copy dữ liệu cần chuyền đổi vào Sheets "TongHop", bấm ALT + F11 lên và phím F5 (lưu ý là có sẵn code ở trong module). Sau đó, vào Sheets "KetQuaMongMuon" để kiểm tra kết quả.
 
Bạn ơi, cài hàm đó thì mình làm ok rồi. Vấn đề là không biết dùng cái hàm đó thôi; hàm có 3 tham số, mà chẳng biết điền như thế nào?
Cú pháp
Mã:
=SplitRow(aArr, lMainCol, sDelemiter)
Trong đó:
aArr: Mảng nguồn
lMainCol: Cột chính (dựa vào cột này để xác định số dòng được tách).
sDelemiter: Ký tự xác định vị trí cắt chuỗi (trường hợp của topic này là ký tự xuồng dòng).
Cách dùng
Dùng trong VBA: Như sub Test ở bài 6, cú pháp như trên.
Dùng trên sheet: Dùng công thức mảng với dạng trả về kết quả là một mảng. Lấy file ở bài này làm ví dụ, ở sheet Tonghop chọn một vùng có 5 cột 19 dòng, nhập công thức bên dưới sau đó nhấn Ctrl + Shift + Enter.
Mã:
=SplitRow(A4:F8, 4, Char(10) )
 
... chọn một vùng có 5 cột 19 dòng, nhập công thức bên dưới sau đó nhấn Ctrl + Shift + Enter.
Mã:
=SplitRow(A4:F8, 4, Char(10) )
Chọn đại một ô nào đó, và gõ:
=Rows(SplitRow(A4:F8, 4, Char(10) ) ) & " " & Columns(SplitRow(A4:F8, 4, Char(10) ) )
Sẽ được số dòng và và số cột của mảng.

Có dữ liệu này rồi thì biết cần chọn bao nhiêu cột và hàng.
 
Thân gửi: Anh/chị/em trên GPE
Hiện tại, mình đang có 1 file dữ liệu mà trong 1 ô có rất nhiều dòng nhưng nếu làm thao tác thủ công rất tốn thời gian nên có nhờ mọi người có thể giúp em giải quyết vấn đề vấn với ạ.
Rất mong được sự giúp đỡ.
Trân trọng.
1/ Bạn Copy dữ liệu và Paste vào sheet TongHop rồi sang sheet KetQuaMongMuon nhấn nút để xem kết quả.
2/ Lưu ý: Cuối mỗi Cell tôi tô màu xanh ở cột D và cột F của sheet TongHop bạn nhập thừa một cái Alt+Enter tôi phải xử xứ mới ra kết quả.
 

File đính kèm

1/ Bạn Copy dữ liệu và Paste vào sheet TongHop rồi sang sheet KetQuaMongMuon nhấn nút để xem kết quả.
2/ Lưu ý: Cuối mỗi Cell tôi tô màu xanh ở cột D và cột F của sheet TongHop bạn nhập thừa một cái Alt+Enter tôi phải xử xứ mới ra kết quả.
Em cảm ơn anh đã giúp đỡ, file chạy rất mượt mà.
 
Cú pháp
Mã:
=SplitRow(aArr, lMainCol, sDelemiter)
Trong đó:
aArr: Mảng nguồn
lMainCol: Cột chính (dựa vào cột này để xác định số dòng được tách).
sDelemiter: Ký tự xác định vị trí cắt chuỗi (trường hợp của topic này là ký tự xuồng dòng).
Cách dùng
Dùng trong VBA: Như sub Test ở bài 6, cú pháp như trên.
Dùng trên sheet: Dùng công thức mảng với dạng trả về kết quả là một mảng. Lấy file ở bài này làm ví dụ, ở sheet Tonghop chọn một vùng có 5 cột 19 dòng, nhập công thức bên dưới sau đó nhấn Ctrl + Shift + Enter.
Mã:
=SplitRow(A4:F8, 4, Char(10) )
Bạn ơi lMainCol có điều kiện gì không vậy. Có phải lmaincol phải nhỏ hơn tổng số cột trong vùng chọn không? Mình thay giá trị 4 bằng 7 thì bị lỗi. Giả sử sheet TongHop có nhiều dữ liệu mấy ngàn dòng mình phải xem cột nào có ký tự xuống dòng char(10) nhiều nhất để chọn cột đó làm lMainCol, có thể thêm vào code tự xác định lMainCol luôn được không?
 
Lần chỉnh sửa cuối:
Để viết được code thế này chắc anh phải là dân lập trình chuyên nghiệp lắm anh nhỉ, thấy code của mà em mê quá vừa đẹp mắt lại rất hiệu quả. Anh có phương pháp nào để em giống như anh được không nhỉ, thời buổi này mà không biết code Excel thì khó lắm đây.
Được voi đòi luôn 2 bà trưng. Mình không biết về VBA. Nhưng mình nghĩ cũng khó đó
Bài đã được tự động gộp:

Mình có quay video lại nhưng không upload lên được nên gửi bạn đường link: https://drive.google.com/file/d/1LwKd5I0Z2g-wmcPjG5PCPGSunC83b4XP/view?usp=sharing
Bài đã được tự động gộp:


Đọc mục lục của anh là em biết anh lão làng rồi làm cho em cảm thấy học viết code Excel không phải là vấn đề nan giải nữa. Nhưng mà anh và em có khoảng cách về địa lý (em ở Quảng Nam) nên không sao hội ngộ để anh truyền thụ võ công được.
Nếu anh ấy mà dậy thật. Tôi nghĩ nửa năm thuê trọ đến gần nhà anh để uống cofe là không uổng
 
Lần chỉnh sửa cuối:
Web KT

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

Back
Top Bottom