Phạm Nam Thương
Phạm Nam Thương
Thảo luận 8 thảo luận
Vỗ tay 0 vỗ tay
Lượt xem 112 lượt xem

Làm thế nào để xử lý nối các text theo điều kiện Mình có dữ liệu tên

Làm thế nào để xử lý nối các text theo điều kiện: Mình có dữ liệu tên KH và Mã lô đất họ mua. bảng dữ liệu dạng 1 tên KH đi với 1 mã lô ở cột bên cạnh. Vấn đề: bây giờ có 1 khách hàng mua 3 lô. Mình muốn từ bảng data ban đầu chuyển thành bảng (nếu 1 khách 3 lô thì cột họ và tên là khách, cột lô đất là nối text tên 3 mã lô với nhau. Thanks!

Thảo luận 8 câu trả lời
Lượt xem 112 lượt xem
Vỗ tay vỗ tay
Phạm Nam Thương 14:05 - May 24, 2021

Chào bạn, bạn có hình ảnh mô tả hoặc file không? bạn đẩy lên giúp gitiho

Vỗ tay vỗ tay
Phạm Nam Thương 14:05 - May 24, 2021

Bạn có thể vui lòng gửi kèm hình ảnh hoặc file không? vì mình hơi khó hình dung nếu chỉ mô tả bằng lời như vậy => hiện mình chưa có hướng dẫn cụ thể được.

Vỗ tay vỗ tay
Phạm Nam Thương 14:05 - May 24, 2021

Chào ad! Nhu cầu của mình gần giống như trong ảnh này. Trong ảnh người viết dùng hàm textjoin. Nhưng mình dùng phiên bản ko có textjoin. Nên ko biết làm ntn.

Vỗ tay vỗ tay
Phạm Nam Thương 14:05 - May 24, 2021

Bạn có thể làm như sau (phức tạp hơn so với hàm TextJoin khá nhiều):

Bước 1: xử lý bảng dữ liệu:

dựa trên nguyên tắc:

cột Join: nối liên tiếp các kết quả với nhau nếu tên giống nhau

=Nếu(dòng tên dưới = dòng tên trên, Đoạn nối trên sẽ nối tiếp với Text của dòng đó, còn không thì chỉ lấy đoạn text tại dòng đó)

cột Count: đếm số lần xuất hiện của tên, kèm theo tên để tạo ra 1 mã không bị trùng lặp

Bước 2: dùng hàm index + match để tham chiếu kết quả

mã dò tìm là mã tạo bởi tên + tổng số lần xuất hiện của tên đó

dò tìm trong cột Count

Kết quả lấy tương ứng trên cột Join

Vỗ tay vỗ tay
Phạm Nam Thương 14:05 - May 24, 2021
Lưu ý là để đảm bảo nguyên tắc trên thì bạn phải sắp xếp bảng theo thứ tự (cột tên), nếu không thì kết quả sẽ không đúng.
Vỗ tay vỗ tay
Phạm Nam Thương 15:05 - May 24, 2021

Cảm ơn ad! để mình xem kỹ cách của ad hơn. Tuy nhiên, trước mắt mình có làm theo cách tạo code vba để viết lại hàm textjoin rồi apply vào. Sau khi viết hàm mình thấy bạn youtuber hướng dẫn phải dùng Ctrl+ship+enter thì hàm mới trả về đúng kết quả. Còn nếu enter bình thường kết quả trả về nối toàn bộ cell trong mảng kết quả. Mình ko hiểu lắm về việc phải dùng Ctrl+ship+enter? Có thể giải thích thêm cho mình không?

Vỗ tay vỗ tay
Phạm Nam Thương 15:05 - May 24, 2021

chào bạn bạn có thể dùng vba nhé 

https://gitiho.com/blog/huong-dan-cac...

Vỗ tay vỗ tay
Phạm Nam Thương 15:05 - May 24, 2021

Nếu bạn chưa hiểu về cách dùng công thức mảng hay VBA thì có thể tìm hiểu kỹ cách làm của mình, vì chỉ dùng các công thức có sẵn của excel và không phải công thức mảng.

Vì các công thức mảng, VBA có ưu điểm là ngắn gọn và nhanh ra kết quả, nhưng lại khó hiểu, khó giải thích nếu bạn chưa biết gì về nó.

Vỗ tay vỗ tay
Câu hỏi liên quan
@ 2020 - Bản quyền của Công ty cổ phần công nghệ giáo dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở kế hoạch và đầu tư TP. Hà Nội