Cách Kết Hợp Nhiều Cột Trong Excel Thành Một Cột: Hướng Dẫn Chi Tiết Và Nâng Cao

Giới thiệu

Trong công việc quản lý dữ liệu, chúng ta thường phải làm việc với các bảng tính có nhiều cột chứa thông tin liên quan. Đôi khi, để thuận tiện cho việc xuất báo cáo, phân tích hoặc lưu trữ, ta cần “gộp” các cột này thành một cột duy nhất. Việc này không chỉ giúp bảng tính trở nên gọn gàng mà còn giúp các công cụ phân tích dữ liệu như Power Query, PivotTable, hoặc các công cụ thống kê bên ngoài Excel xử lý được dữ liệu một cách hiệu quả hơn. Trong bài viết này, chúng ta sẽ tìm hiểu kỹ lưỡng các phương pháp khác nhau để kết hợp nhiều cột trong Excel thành một cột, từ cách đơn giản nhất dùng hàm văn bản, đến những kỹ thuật nâng cao với Power Query, VBA và Dynamic Arrays.

Tại sao lại cần gộp cột?

  1. Tối ưu hóa dữ liệu – Khi dữ liệu được lưu trữ trong một cột duy nhất, việc lọc, tìm kiếm và sắp xếp trở nên nhanh chóng hơn.
  2. Hỗ trợ báo cáo – Nhiều công cụ báo cáo yêu cầu dữ liệu nhập vào ở dạng danh sách duy nhất.
  3. Triển khai dữ liệu – Khi xuất wp dữ liệu sang các hệ thống khác như CRM, ERP, hoặc cơ sở dữ liệu SQL, một cột duy nhất giúp giảm độ phức tạp.
  4. Tăng tính động – Khi sử dụng các công thức mới của Excel (Dynamic Arrays, LET, LAMBDA),்சி dữ liệu được tổ chức một cách dễ dàng hơn.

Phương pháp 1: Sử dụng hàm CONCATENATE / CONCAT / TEXTJOIN

1.1 CONCATENATE

=CONCATENATE(A2," ",B2," ",C2)

Hàm này nối các giá trị trong các ô A2, B2, C2 với dấu cách giữa chúng. Bạn có thể thay dấu cách bằng bất kỳ ký tự nào bạn muốn.

  • Ưu điểm: Đơn giản, có thể dùng trong mọi phiên bản Excel.
  • Nhược điểm: Đòi hỏi phải ghi lại công thức cho từng cột, không hỗ trợ số lượng lớn các cột một cách linh hoạt.

1.2 CONCAT

=CONCAT(A2,B2,C2)

Hàm mới hơn, cho phép nối các giá trị mà không cần phân cách. Thay vì CONCATENATE, bạn có thể dùng CONCAT để giảm độ dài công thức.

1.3 TEXTJOIN

=TEXTJOIN(" ",TRUE,A2:C2)

Hàm này rất mạnh, cho phép bạn:
– Chỉ định ký tự phân cách (ở đây là dấu cách).
– Bỏ qua các ô trống (TRUE).
– Nối một dãy ô (A2:C2) mà không cần phải liệt kê từng ô riêng lẻ.

Ví dụ thực tế

Giả sử bạn có bảng dữ liệu:
| Họ | Tên | Địa Chỉ |
|—–|—–|———|
| Nguyễn | Anh | 123 Đường A |
| Trần | Bình | 456 Đường B |

Bạn muốn gộp thành Họ Tên Địa Chỉ. Công thức:

=TEXTJOIN(" ",TRUE,A2:C2)

Kết quả: Nguyễn Anh 123 Đường A.

1.4 Kết hợp nhiều cột với dấu phân cách khác

Bạn có thể thay dấu cách bằng dấu phẩy, dấu gạch ngang, hoặc ký tự tùy ý:

=TEXTJOIN("; ",TRUE,A2:C2)

Kết quả: Nguyễn Anh; 123 Đường A.

Phương pháp 2: Sử dụng Flash Fill

Flash Fill là tính năng mạnh mẽ trong Excel 2026 trở lên, giúp bạn tự động gộp cột bằng cách học từ mẫu.

Bước thực hiện

  1. Trong ô B2 (hoặc bất kỳ ô nào bạn muốn gộp/
  2. Gõ một ví dụ: Nguyễn Anh 123 Đường A.
  3. Nhấn Ctrl + E hoặc chọn Data → Flash Fill.
  4. Excel sẽ tự động điền giá trị cho các dòng khác dựa trên mẫu bạn đã cung cấp.

Lưu ý: Flash Fill chỉ hoạt động khi mẫu rõ ràng và dữ liệu không quá phức tạp. Nếu dữ liệu có nhiều biến thể, bạn nên dùng công thức hoặc Power Query.

Phương pháp 3: Power Query – “Gộp cột” (Merge Columns)

Power Query là công cụ mạnh mẽ để xử lý dữ liệu, cho phép bạn thực hiện nhiều thao tác phức tạp một cách trực quan và tùy biến.

3.1 Nhập dữ liệu vào Power Query

  1. Chọn vùng dữ liệu (ví dụ A1:C10).
  2. Vào Data → From Table/Range. Nếu vùng chưa là bảng, Excel sẽ hỏi bạn tạo bảng.
  3. Power Query sẽ mở cửa sổ Power Query Editor.

3.2 Thực hiện Merge Columns

  1. Chọn các cột muốn gộp (Shift + click).
  2. Vào tab Transform → Merge Columns.
  3. Chọn ký tự phân cách (ví dụ dấu cách) và đặt tên cột mới (ví dụ FullName).
  4. Nhấn OK.

3.3 Áp dụng và tải dữ liệu

  1. Khi đã hoàn thành, nhấn Close & Load để đưa dữ liệu trở lại Excel dưới dạng bảng mới.
  2. Từ đây, bạn có thể thực hiện các thao tác phức tạp hơn, như lọc, sắp xếp, hoặc tạo PivotTable.

Ưu điểm của Power Query

  • Tự động cập nhật: Khi dữ liệu gốc thay đổi, bạn chỉ cần làm mới (Refresh) query.
  • Xử lý quy mô lớn: Khả năng xử lý hàng nghìn dòng dữ liệu một cách mượt mà.
  • Tùy chỉnh linh hoạt: Có thể thêm các bước xử lý trung gian (Transform, Add Column, Split Column, etc.).

Phương pháp 4: VBA Macro – Gộp cột một cách tùy biến

Nếu bạn thường xuyên thực hiện thao tác gộp cột với cùng một quy tắc, viết một macro VBA là lựa chọn tối ưu.

4.1 Mã mẫu

Sub CombineColumns() Dim ws As Worksheet Dim rng As Range Dim destCol As Long Dim i As Long Set ws = ActiveSheet destCol = ws.Cells(1, ws.Columns.Count).End(xlToLeft).Column + 1 'cột mới ws.Cells(1, destCol).Value = "Combined" For i = 2 To ws.Cells(ws.Rows.Count, 1).End(xlUp).Row ws.Cells(i, destCol).Value = ws.Cells(i, 1).Value & " " & _ ws.Cells(i, 2).Value & " " & _ ws.Cells(i, 3).Value Next i
End Sub
  • Giải thích: Macro này sẽ tạo một cột mới, gộp giá trị từ cột A, B, C, và điền vào cột mới.
  • Tùy chỉnh: Bạn có thể thay đổi số lượng cột, ký tự phân cách, hay thêm điều kiện lọc.

4.2 Kích hoạt macro

Combine Multiple Columns In Excel Into One Column
Combine Multiple Columns In Excel Into One Column
  1. Nhấn Alt + F11 → Insert → Module.
  2. Dán mã vào cửa sổ Module.
  3. Trở lại Excel, nhấn Alt + F8, chọn macro và chạy.

Phương pháp 5: Dynamic Arrays (Excel 365) – Sử dụng hàm LET và LAMBDA

Nếu bạn đang sử dụng Excel 365, các hàm Dynamic Arrays cho phép bạn thực hiện gộp cột một cách rất linh hoạt.

5.1 Hàm LET

Hàm LET cho phép bạn đặt tên cho các biểu thức, giúp công thức trở nên ngắn gọn và dễ đọc.

=LET( data, A2:C2, TEXTJOIN(" ", TRUE, data)
)

5.2 Hàm LAMBDA

Bạn có thể tạo một hàm tùy chỉnh để gộp bất kỳ cột nào.

=LAMBDA(colRange, sep, TEXTJOIN(sep, TRUE, colRange)
)

Sau khi định nghĩa, bạn có thể gán hàm này vào một tên (Name Manager) và sử dụng như một hàm thông thường:

=MyCombine(A2:C2, " ")

Giải quyết các vấn đề thường gặp

1. Ô trống trong dữ liệu

  • Với TEXTJOIN: Dùng tham số thứ ba TRUE để bỏ qua ô trống.
  • Với CONCATENATE: Bạn cần kiểm tra thủ công IF(A2<>"",A2,"").

2. Dữ liệu có dấu cách đầu/cuối

  • Sử dụng hàm TRIM: =TRIM(A2) trước khi nên gộp.

3. Dữ liệu disclaimers (có dấu phẩy, dấu chấm)

  • Dùng tùy chọn “Replace” trong Flash Fill hoặc Power Query để loại bỏ ký tự đặc biệt.

4. Gộp dữ liệu trong các bảng khác nhau

  • Khi gộp các bảng dữ liệu liền nhau, bạn có thể dùng Power Query để “Append Queries” trước khi “Merge Columns”.

Kỹ thuật nâng cao

1. Gộp dữ liệu theo điều kiện

Bạn có thể sử dụng hàm IF, FILTER kết hợp với TEXTJOIN để gộp dữ liệu chỉ khi thỏa mãn điều kiện.

=TEXTJOIN(" | ",TRUE,IF(A2:A10="Nam",B2:B10,""))

2. Gộp dữ liệu từ nhiều sheet

Sử dụng công thức 3D hoặc Power Query để lấy ugy.

3. redeploy dữ liệu sau khi gộp

  • Khi dữ liệu gộp, bạn có thể tiếp tục dùng hàm VLOOKUP hoặc INDEX/MATCH để tra cứu.

4. Tự động hiện thị cột gộp

  • Sử dụng Conditional Formatting để hiển thị cột gộp rõ ràng.

Ví dụ thực hành: Gộp thông tin khách hàng

Giả sử bạn có bảng dữ liệu khách hàng:
| Mã Khách hàng | Họ | Tên | Địa chỉ | Số điện thoại |
|—————|—————|—————-|—————–|—————-|
| 001 | Nguyễn | Văn A | 123 Đường A | 0912345678 |
| 002 | Trần | Thị B | 456 Đường B | 0987654321 |

Bạn muốn gộp thành:
Mã Khách hàng: 001, Họ Tên: Nguyễn Văn Awarz, Địa chỉ: 123 Đường A, SĐT: 0912345678

Công thức

=TEXTJOIN(", ",TRUE, "Mã Khách hàng: "&A2, "Họ Tên: "&B2&" "&C2, "Địa chỉ: "&D2, "SĐT: "&E2)

Sử dụng Power Query

  1. Nhập dữ liệu vào Power Query.
  2. Thêm cột tùy chỉnh (Custom Column) với công thức:
    m "Mã Khách hàng: "&Mã Khách hàng&", Họ Tên: "&Họ&" "&Tên&", Địa chỉ: "&Địa chỉ&", SĐT: "&Số điện thoại
  3. Định dạng kết quả và tải dữ liệu trở lại Excel.

Tổng kết

Gộp nhiều cột trong Excel thành một cột là một kỹ năng quan trọng giúp bạn tối ưu hóa dữ liệu, tăng tính linh hoạt và giảm bớt công việc thủ công. Tùy thuộc vào phiên bản Excel, mục tiêu và quy mô dữ liệu, bạn có thể chọn một trong các phương pháp sau:
– Hàm văn bản (CONCATENATE, CONCAT, TEXTJOIN) – nhanh và dễ dùng cho dữ liệu nhỏ.
– Flash Fill – thích hợp cho dữ liệu có mẫu rõ ràng và không quá phức tạp.
– Power Query – mạnh mẽ, tự động, phù hợp với dữ liệu lớn và cần tái sử dụng.
– VBA Macro – linh hoạt, có thể tùy biến sâu cho quy trình tự động.
– Dynamic Arrays (LET, LAMBDA) – tối ưu cho Excel 365, cho phép viết hàm tùy chỉnh một cách ngắn gọn.

Những kỹ thuật nâng cao như xử lý ô trống, dữ liệu có dấu đặc biệt, gộp theo điều kiện hay gộp dữ liệu từ nhiều sheet sẽ giúp bạn trở nên chuyên nghiệp hơn trong quản lý dữ liệu. Bằng cách kết hợp các phương pháp này, bạn có thể nhanh chóng chuyển đổi bảng dữ liệu phức tạp thành một cột duy nhất, từ đó nâng cao hiệu quả công việc và giảm thiểu sai sót. Happy Excel!

⚠️
LƯU Ý QUAN TRỌNG: Miễn trừ trách nhiệm: Mặc dù chúng tôi luôn nỗ lực để đảm bảo tính chính xác và cập nhật của thông tin, nhưng các quy định về giáo dục và tuyển sinh có thể thay đổi theo thời gian. BigSchool không chịu trách nhiệm về bất kỳ sai sót nào hoặc kết quả phát sinh từ việc sử dụng thông tin trên trang này. Độc giả nên liên hệ trực tiếp với nhà trường hoặc cơ quan chức năng để có thông tin mới nhất. Ngoài ra, BigSchool tuyệt đối không bán sản phẩm, khóa học hay cung cấp dịch vụ được nhắc đến trong bài.

Viết một bình luận