Đôi khi việc tìm kiếm giá trị từ một cột Excel dài trở nên khó khăn. Do đó, chúng ta cần tách một cột thành nhiều cột trong Excel. Điều này làm cho tập dữ liệu dễ đọc hơn và dễ dàng truy cập thông tin chính xác hơn. Trong bài viết này, chúng ta sẽ tìm hiểu cách tách một cột thành nhiều cột thông qua các ví dụ và giải thích chi tiết.
File thực hành
Tải xuống file thực hành bên dưới để làm theo các ví dụ.
7 phương pháp nhanh để tách một cột thành nhiều cột trong Excel
1. Sử dụng tính năng 'Text To Columns' (Tách văn bản thành cột) của Excel
Tính năng Text to Columns của Excel là một công cụ tích hợp sẵn. Giả sử chúng ta có một tập dữ liệu (B4:D9) về các sản phẩm của Microsoft. Chúng ta sẽ tách thông tin của một cột (B5:B9) thành nhiều cột.

CÁC BƯỚC THỰC HIỆN:
- Trước tiên, chọn phạm vi cột (B5:B9) cần tách.
- Tiếp theo, chuyển đến tab Data (Dữ liệu).
- Nhấp vào 'Text to Columns' từ tùy chọn Data Tools (Công cụ dữ liệu).

- Cửa sổ Wizard Step 1 (Bước 1 của Trình hướng dẫn) xuất hiện.
- Chọn tùy chọn 'Delimited' (Có dấu phân cách) và nhấp Next (Tiếp theo).

- Cửa sổ Wizard Step 2 hiển thị. Tích vào ô 'Space' (Khoảng trắng).
- Xem trước kết quả trong hộp Data preview (Xem trước dữ liệu).
- Sau đó nhấp Next.

- Cửa sổ Wizard Step 3 hiện ra. Chọn 'General' (Chung) từ tùy chọn 'Column data format' (Định dạng dữ liệu cột).
- Chọn vị trí muốn hiển thị kết quả trong ô Destination (Đích).
- Kiểm tra xem kết quả có đúng không trong hộp Data preview.
- Nhấp vào Finish (Hoàn tất).

- Cuối cùng, chúng ta thấy dữ liệu của một cột đã được tách thành nhiều cột.

2. Tách nhiều dòng của một cột thành nhiều cột trong Excel
Với sự giúp đỡ của tính năng 'Text to Columns', chúng ta có thể tách nhiều dòng của một cột thành nhiều cột. Giả sử chúng ta có tập dữ liệu (B4:D9) về các sản phẩm Microsoft kèm năm trong một cột. Chúng ta sẽ tách chúng.

CÁC BƯỚC THỰC HIỆN:
- Chọn phạm vi cột (B5:B9) cần tách.
- Chuyển đến tab Data > Data Tools > tính năng 'Text to Columns'.

- Cửa sổ Wizard Step 1 xuất hiện.
- Chọn 'Delimited' và nhấp Next.

- Từ cửa sổ Wizard Step 2, tích vào ô 'Other' (Khác) và gõ "," (dấu phẩy).
- Xem trước kết quả trong hộp Data preview.
- Nhấp Next.

- Từ cửa sổ Wizard Step 3, chọn 'General' từ 'Column data format'.
- Chọn vị trí hiển thị kết quả trong ô Destination.
- Kiểm tra kết quả trong Data preview.
- Nhấp Finish.

- Hộp xác nhận xuất hiện. Chọn OK.

- Cuối cùng, chúng ta thấy kết quả.

3. Tách ô đã gộp (Merged Cell) thành nhiều cột trong Excel
Từ tập dữ liệu dưới đây, chúng ta thấy một cột có các ô đã gộp. Chúng ta sẽ tách các ô này và chuyển đổi thành nhiều cột.

CÁC BƯỚC THỰC HIỆN:
- Trước tiên, chọn tất cả các ô đã gộp của cột đó.
- Chuyển đến tab Home (Trang chủ).
- Nhấp vào menu thả xuống Merge & Center (Gộp và căn giữa) từ phần Alignment (Căn chỉnh).
- Chọn Unmerge Cells (Bỏ gộp ô).

- Chúng ta thấy các ô đã được bỏ gộp và tách thành các cột khác nhau.

Đọc thêm: Cách tách cột trong Excel Power Query (5 phương pháp dễ dàng)
4. Sử dụng tính năng 'Flash Fill' (Điền nhanh) của Excel để tách cột
Excel có một số công cụ đặc biệt và thông minh. 'Flash Fill' là một trong số đó. Flash Fill sao chép mẫu của ô và đưa ra kết quả theo mẫu đó. Ở đây chúng ta có tập dữ liệu sản phẩm Microsoft kèm năm. Chúng ta sẽ tách dữ liệu của một cột (B4:B9) thành nhiều cột.

CÁC BƯỚC THỰC HIỆN:
- Chọn Ô C5 và nhập tên sản phẩm "Microsoft Excel".
- Sau đó chọn Ô D5 và nhập năm "2018".

- Chọn Ô C5 và sử dụng công cụ Fill Handle (Chấm vuông góc ô) để tự động điền các ô trống.
- Từ menu 'Autofill option' (Tùy chọn điền tự động), nhấp vào 'Flash Fill'.

- Làm tương tự cho cột tiếp theo và chúng ta sẽ thấy kết quả.

5. Tách một cột thành nhiều cột bằng VBA
Mã Visual Basic for Application (VBA) của Microsoft Excel giúp chúng ta tách một cột thành nhiều cột. Giả sử chúng ta có tập dữ liệu (B4:B14) về các sản phẩm Microsoft Excel theo năm. Chúng ta sẽ tách cột này thành hai cột D4 & E4.

CÁC BƯỚC THỰC HIỆN:
- Trước tiên, chọn tất cả giá trị từ cột.
- Tiếp theo, vào worksheet từ tab sheet và chuột phải vào nó.
- Chọn 'View Code' (Xem mã).

- Cửa sổ VBA Module xuất hiện.
- Nhập mã sau:
Sub SplitOneColumn()
Dim rng As Range
Dim InputRng As Range
Dim OutputRng As Range
Dim xRow As Integer
Dim xCol As Integer
Dim xArr As Variant
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Select Input Range :", "SplitOneColumn", InputRng.Address, Type:=8)
xRow = Application.InputBox("Enter Row Number :", "SplitOneColumn")
Set OutputRng = Application.InputBox("Select Output Range :", xTitleId, Type:=8)
Set InputRng = InputRng.Columns(1)
xCol = InputRng.Cells.Count / xRow
ReDim xArr(1 To xRow, 1 To xCol + 1)
For i = 0 To InputRng.Cells.Count - 1
xValue = InputRng.Cells(i + 1)
iRow = i Mod xRow
iCol = VBA.Int(i / xRow)
xArr(iRow + 1, iCol + 1) = xValue
Next
OutputRng.Resize(UBound(xArr, 1), UBound(xArr, 2)).Value = xArr
End Sub
- Sau đó nhấp vào tùy chọn Run (Chạy).

- Từ hộp xác nhận, chọn Run.

- Chọn phạm vi đầu vào và nhấp OK.

- Nhập số hàng mong muốn cho cột mới và chọn OK.

- Chọn ô đầu tiên của cột mới và nhấp OK.

- Cuối cùng, chúng ta thấy kết quả: tất cả giá trị của một cột đã được tách thành hai.

6. Sử dụng công thức INDEX của Excel để tách cột
Hàm INDEX của Excel kết hợp với hàm ROWS được sử dụng để tách một cột. Giả sử chúng ta có tập dữ liệu (B4:B14). Chúng ta sẽ tách các giá trị này thành hai cột (Cột 1 & Cột 2).

CÁC BƯỚC THỰC HIỆN:
- Ban đầu, chọn Ô D5.
- Nhập công thức:
=INDEX($B$5:$B$14,ROWS(D$5:D5)*2-1)
- Nhấn Enter và sử dụng Fill Handle để tự động điền các ô dưới.

- Sau đó chọn Ô E5.
- Nhập công thức:
=INDEX($B$5:$B$14,ROWS(E$5:E5)*2)
- Nhấn Enter và sử dụng Fill Handle để xem kết quả.

7. Sử dụng hàm LEFT & RIGHT của Excel để tách cột
Hàm LEFT của Excel trả về các ký tự bên trái nhất của chuỗi văn bản, trong khi hàm RIGHT giúp trích xuất các ký tự cuối cùng từ chuỗi văn bản. Cả hai đều là Hàm văn bản (Text Functions) trong Excel. Ở đây chúng ta có tập dữ liệu (B4:B9) trong một cột. Chúng ta sẽ sử dụng các hàm văn bản để tách giá trị từ một cột.

CÁC BƯỚC THỰC HIỆN:
- Chọn Ô C5.
- Nhập công thức:
=LEFT(B5,SEARCH(" ",B5)-1)
➥ Phân tích công thức
➤ SEARCH(" ",B5)
Hàm SEARCH sẽ trả về vị trí của khoảng trắng.
➤ LEFT(B5,SEARCH(" ",B5)-1)
Điều này sẽ trả về giá trị bên trái khoảng trắng.
- Nhấn Enter và sử dụng công cụ Fill Handle để tự động điền các ô.

- Chọn Ô D5.
- Nhập công thức:
=RIGHT(B5,LEN(B5)-SEARCH(" ",B5))
- Cuối cùng, nhấn Enter và sử dụng Fill Handle để xem kết quả.

➥ Phân tích công thức
➤ SEARCH(" ",B5)
Hàm SEARCH trả về vị trí khoảng trắng.
➤ LEN(B5)
Hàm LEN trả về tổng số ký tự.
➤ RIGHT(B5,LEN(B5)-SEARCH(" ",B5))
Điều này trả về giá trị bên phải khoảng trắng.
Kết luận
Đây là những cách nhanh nhất để tách một cột thành nhiều cột trong Excel. Có file thực hành đi kèm. Hãy tải xuống và thử nghiệm ngay. Đừng ngần ngại đặt câu hỏi hoặc đề xuất phương pháp mới.
Các bài viết liên quan
- Tách cột trong Excel theo từ (5 cách hiệu quả)
- Cách tách cột theo khoảng trắng đầu tiên trong Excel (với các bước dễ dàng)
- Cách tách cột trong Excel theo dấu phẩy (8 phương pháp nhanh)
- Tách cột ngày và giờ trong Excel (7 phương pháp dễ dàng)