Tách văn bản thành nhiều hàng trong Excel bằng hàm TEXTSPLIT (Phân 1)

Quảng cáo 1

Đa số dữ liệu trong Excel sẽ được sắp xếp theo cột và việc chia văn bản trong một ô thành nhiều cột thay vì hàng là đều cần thiết.

Nhưng trong một số trường hợp, bạn có thể muốn chia văn bản thành nhiều hàng trong Excel.

Ví dụ: Khi bạn có nhiều tên trong một ô và bạn muốn tách các tên này và đưa chúng vào một cột ở các hàng khác nhau.

Hoặc bạn có thể có một địa chỉ trong một ô và bạn muốn chia các phần khác nhau của địa chỉ và xếp chúng thành các hàng khác nhau.

Trong bài viết này, trannghiait.com sẽ giới thiệu cho các bạn một số công thức và phương pháp đơn giản mà bạn có thể sử dụng để chia nhanh văn bản trong một ô thành nhiều hàng (tùy thuộc vào dấu phân cách)

Tách văn bản thành hàng bằng hàm TEXTSPLIT

Phân chia dựa trên một dấu phân cách

Dưới đây là ví dụ trong đó tôi có một địa chỉ trong ô A2 và tôi muốn chia các phần khác nhau của địa chỉ thành các hàng khác nhau trong một cột.

Địa chỉ trong ô A2 cho văn bản thành hàng

Trong trường hợp này, các phần khác nhau của địa chỉ được phân tách bằng dấu phẩy.

Dưới đây là công thức sẽ chia nội dung trong ô thành các hàng riêng biệt:=TEXTSPLIT(A2,,”, “)

Hàm TEXTSPLIT để chia văn bản thành hàng

Công thức TEXTSPLIT ở trên có ba đối số:

  • văn bản – Đây là đối số đầu tiên mà tôi đã sử dụng tham chiếu ô của ô (A2) chứa văn bản mà tôi muốn tách
  • col_delimiter – Đây là đối số thứ hai mà bạn phải chỉ định dấu phân cách dựa trên đó việc phân tách sẽ xảy ra trong các cột riêng biệt. Trong trường hợp này, vì tôi muốn văn bản được chia thành hàng thay vì cột nên tôi đã để trống đối số này.
  • [row_delimiter] – Đây là đối số thứ ba mà tôi cần chỉ định dấu phân cách dựa vào đó văn bản sẽ được chia thành các hàng riêng biệt. Vì tôi muốn phân tách địa chỉ sau mỗi dấu phẩy nên tôi đã sử dụng “,” làm dấu phân cách. Lưu ý rằng dấu phân cách của bạn cần phải nằm trong dấu ngoặc kép.

Lưu ý : Hàm TEXTSPLIT cũng có thêm ba đối số tùy chọn mà chúng ta không cần trong ví dụ này.

Ngoài ra, bạn có thể sử dụng công thức dưới đây để có thể xử lý mọi loại tình huống:=TRIM(TEXTSPLIT(A2,,”,”))

Chức năng TRIM và TEXTSPLIT cho văn bản thành hàng

Hàm TRIM đảm bảo rằng không có ký tự khoảng trắng ở đầu trong bất kỳ ô nào.

Phân chia dựa trên hai hoặc nhiều dấu phân cách

Dưới đây là ví dụ trong đó tôi có một địa chỉ trong ô A2 và có hai dấu phân cách (dấu gạch ngang phân tách tên và địa chỉ và dấu phẩy phân tách tất cả các thành phần khác nhau của địa chỉ)

Địa chỉ có hai dấu phân cách

Đây là một công thức duy nhất sẽ xem xét hai dấu phân cách trong khi chia văn bản trong ô thành các hàng:=TRIM(TEXTSPLIT(A2,,{“,,”-“}))

Hàm Textsplit sử dụng hai dấu phân cách để chuyển văn bản thành hàng

Trong ví dụ trên, tôi có các đối số sau trong hàm TEXTSPLIT:

  • text – Đây là tham chiếu ô của ô (A2) mà tôi muốn tách
  • col_delimiter – Đây là dấu phân cách cột, nhưng vì tôi muốn văn bản được chia thành hàng thay vì cột nên đối số này được để trống.
  • [row_delimiter] – Đây là đối số thứ ba mà tôi cần chỉ định dấu phân cách dựa vào đó văn bản sẽ được chia thành các hàng riêng biệt. Vì tôi muốn phân chia địa chỉ dựa trên hai dấu phân cách (dấu gạch ngang và dấu phẩy), nên tôi đã sử dụng một mảng {“,”,”-“}. Điều này yêu cầu công thức kiểm tra tất cả các dấu phân cách được chỉ định trong dấu ngoặc nhọn.

Phân chia dựa trên ngắt dòng

Dưới đây, tôi có ví dụ này trong đó tôi có địa chỉ trong ô A2 và có nhiều ngắt dòng trong địa chỉ.

Địa chỉ có ngắt dòng trong cùng một ô

Thay vì lấy nhiều dòng trong cùng một ô, mình muốn tách nội dung của địa chỉ này ra để lấy mỗi dòng ở một hàng riêng trong một cột.

Điều này một lần nữa có thể được thực hiện nhanh chóng bằng cách sử dụng hàm TEXTSPLIT, trong đó tôi cần bằng cách nào đó sử dụng dấu ngắt dòng làm dấu phân cách.

Và làm thế nào để tôi làm điều đó?

Bằng cách sử dụng công thức trả về dấu ngắt dòng, sau đó có thể dùng công thức này trong hàm TEXTSPLIT làm dấu phân cách.

Dưới đây là công thức sẽ phân chia địa chỉ bằng cách ngắt dòng:=TEXTSPLIT(A2,,CHAR(10))

Hàm Textsplit để chuyển đổi văn bản thành hàng bằng cách sử dụng khoảng cách dòng làm dấu phân cách

Trong công thức trên, tôi đã sử dụng CHAR(10) làm dấu phân cách hàng, trong đó CHAR(10) trả về ký tự ngắt dòng.

Tách nhiều ô thành các hàng trong một cột

Dưới đây là một ví dụ về những gì tôi muốn nói.

Tập dữ liệu để chia văn bản thành hàng khi bạn có nhiều dữ liệu ô

Tôi có tên trong ba ô trong cột A được phân tách bằng dấu phẩy và tôi muốn tách tất cả các tên này để có được tên riêng lẻ trong các ô riêng biệt trong cùng một cột (như hiển thị bên dưới).

Tôi tưởng tượng sẽ là một công thức phức tạp để thực hiện việc này nếu không có TEXTSPLIT, nhưng với nó, điều đó không khó đến thế.

Đây là công thức để làm điều này:=TRIM(TEXTSPLIT(TEXTJOIN(“,,,A2:A4),,”,”))

Hàm TEXTJOIN và TEXTSPLIT để phân tách văn bản theo dấu phân cách và kết hợp trong một cột

Bí quyết trong công thức này là sử dụng hàm TEXTJOIn để kết hợp tất cả các tên trong các ô khác nhau để chúng ta có được một mảng tên được phân tách bằng dấu phẩy.

Trong hàm nối văn bản, đối số đầu tiên là dấu phân cách (trong trường hợp này là dấu phẩy) được sử dụng khi kết hợp nội dung của tất cả các ô.

Kết quả của hàm TEXTJOIN là:

“Stephen, James, Anna, Richard, Helen, Toby, Chris, Mark, Doug”

Sau đó, mảng này được sử dụng trong hàm TEXTSPLIT, hàm này sẽ phân tách nó bằng dấu phẩy làm dấu phân cách.

Tách văn bản thành hàng bằng cách sử dụng tính năng chuyển văn bản thành cột và chuyển đổi

Dưới đây là ví dụ trong đó tôi có một địa chỉ trong ô A2 mà tôi muốn tách (sử dụng dấu phẩy làm dấu phân cách) và nhận kết quả thành các hàng riêng biệt.

Địa chỉ trong ô A2 cho văn bản thành hàng

Bước đầu tiên là sử dụng Văn bản thành Cột để chia nó thành các cột. Điều này có thể được thực hiện bằng các bước dưới đây:

  1. Chọn ô (hoặc phạm vi ô) có dữ liệu
  2. Nhấp vào tab Dữ liệu
Nhấp vào tab dữ liệu
  1. Bấm vào biểu tượng Chuyển văn bản thành Cột (nằm trong nhóm Công cụ dữ liệu)
Bấm vào tùy chọn Chuyển văn bản thành cột trong ruy-băng
  1. Trong ‘Trình hướng dẫn chuyển văn bản thành cột’, chọn tùy chọn Phân cách rồi nhấp vào Tiếp theo.
Chọn tùy chọn được phân cách và nhấp vào tiếp theo
  1. Chọn ‘Dấu phẩy’ làm dấu phân cách (bỏ chọn tất cả các tùy chọn khác) và nhấp vào Tiếp theo.
Chọn, làm dấu phân cách và nhấp vào tiếp theo
  1. Chọn ô Đích nơi bạn muốn có kết quả, sau đó bấm Kết thúc. Trong trường hợp này, tôi sẽ chọn A4 làm ô đích.
chọn ô đích và sau đó nhấp vào kết thúc

Điều này sẽ cung cấp cho bạn kết quả được hiển thị bên dưới, nơi nó đã phân chia dữ liệu của chúng tôi, nhưng chúng tôi đã phân chia dữ liệu theo cột thay vì hàng.

Kết quả chuyển văn bản thành cột

Vì vậy bây giờ chúng ta sẽ sử dụng chức năng chuyển đổi để chuyển đổi dữ liệu này.

Dưới đây là các bước để thực hiện việc này:

  1. Chọn các ô mà bạn muốn chuyển đổi.
  2. Sao chép các ô này. Bạn có thể sử dụng phím tắt Control + C hoặc nhấp chuột phải vào vùng chọn rồi nhấp vào Sao chép.
  3. Ngay trên ô đích nơi bạn muốn chuyển đổi kết quả.
  4. Di con trỏ qua tùy chọn Paste Special (tại biểu tượng mũi tên để hiển thị thêm tùy chọn. Nhấp vào tùy chọn Transpose.
Nhấp vào giá trị dán dưới dạng biểu tượng chuyển vị

Các bước trên sẽ cung cấp cho bạn dữ liệu được chuyển đổi và sau đó bạn có thể xóa kết quả của văn bản thành các cột nếu muốn.

Kết quả cột văn bản được chuyển đổi

Mặc dù cách này có tác dụng nhưng nó không tinh tế bằng phương thức hàm TEXTSPLIT. Nó bao gồm nhiều bước hơn và có những hạn chế sau:

  • Kết quả của phương pháp này là tĩnh, không giống như phương thức hàm TEXTSPLIT, trong đó kết quả là động. Vì vậy, nếu bạn thay đổi dữ liệu gốc, kết quả sẽ không cập nhật (trong khi đó khi bạn sử dụng hàm TEXTSPLIT)
  • Bạn chỉ có thể phân tách dựa trên một dấu phân cách, trong khi với hàm TEXTSPLIT, bạn có thể sử dụng nhiều dấu phân cách.

Quảng cáo 2

Hãy bình luận đầu tiên

Để lại một phản hồi

Thư điện tử của bạn sẽ không được hiện thị công khai.


*