Ghép Nội Dung 2 Cột Trong Excel: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao

1. Giới thiệu tổng quan về việc ghép nội dung 2 cột trong Excel

Trong môi trường làm việc hiện đại, Excel không chỉ là một công cụ tính toán số liệu mà còn là một nền tảng mạnh mẽ để xử lý dữ liệu văn bản. Một trong những nhu cầu phổ biến nhất của người dùng là ghép nội dung của hai (hoặc nhiều) cột lại với nhau để tạo ra một cột duy nhất chứa thông tin tổng hợp. Việc này có thể áp dụng trong nhiều trường hợp thực tiễn:

  • Tạo danh sách khách hàng: ghép họ và tên, địa chỉ, số điện thoại…
  • Kết hợp mã sản phẩm và mô tả: tạo ra một chuỗi duy nhất để xuất ra báo cáo.
  • Hợp nhất dữ liệu từ các nguồn khác nhau: khi dữ liệu được nhập vào các cột riêng biệt và cần được gộp lại để tiện xử lý.

Bài viết này sẽ cung cấp cho bạn một hướng dẫn chi tiết, từ các cách đơn giản nhất cho người mới bắt đầu, đến các kỹ thuật nâng cao dành cho những ai muốn tự động hoá, tối ưu hoá quy trình làm việc trong Excel.

2. Các phương pháp cơ bản để ghép nội dung 2 cột

2.1. Sử dụng dấu “&” (phép nối chuỗi)

Phép nối chuỗi bằng ký tự & là cách nhanh nhất và trực quan nhất. Cú pháp:

=Ô1 & Ô2

Ví dụ:

A (Họ)B (Tên)C (Kết quả)
NguyễnVăn A=A2 & ” ” & B2 → Nguyễn Văn A
TrầnThị B=A3 & ” ” & B3 → Trần Thị B

Lưu ý: Để chèn dấu cách, dấu gạch ngang hoặc bất kỳ ký tự nào khác, bạn cần đặt chúng trong dấu ngoặc kép " " như trong ví dụ trên.

2.2. Hàm CONCAT (Excel 2026 trở lên)

Hàm CONCAT là phiên bản nâng cấp của hàm CONCATENATE (cũ) và cho phép nối nhiều ô cùng lúc. Cú pháp:

=CONCAT(text1, text2, …)

Ví dụ:

=CONCAT(A2, " ", B2)

2.3. Hàm TEXTJOIN (Excel 2026 trở lên)

Khi cần nối nhiều ô và muốn tự động bỏ qua các ô trống, TEXTJOIN là lựa chọn lý tưởng. Cú pháp:

=TEXTJOIN(delimiter, ignore_empty, text1, text2, …)
  • delimiter: ký tự ngăn cách (ví dụ: " " hoặc ", ").
  • ignore_empty: TRUE để bỏ qua ô trống, FALSE để giữ lại.

Ví dụ:

=TEXTJOIN(" ", TRUE, A2, B2)

Nếu A2 trống, kết quả vẫn sẽ là “Tên” (không có khoảng trắng thừa).

2.4. Hàm CONCATENATE (đối với các phiên bản cũ)

Trước Excel 2026, hàm CONCATENATE là chuẩn. Cú pháp:

=CONCATENATE(text1, text2, …)

Ví dụ:

=CONCATENATE(A2, " ", B2)

Mặc dù vẫn hoạt động, Microsoft đã khuyến cáo người dùng chuyển sang CONCAT hoặc TEXTJOIN.

3. Xử lý các trường hợp phức tạp

3.1. Loại bỏ khoảng trắng thừa ở đầu/cuối chuỗi

Khi ghép dữ liệu, đặc biệt là từ các ô nhập tay, có thể xuất hiện khoảng trắng không mong muốn. Để làm sạch, sử dụng hàm TRIM:

=TRIM(A2) & " " & TRIM(B2)

Hoặc kết hợp với TEXTJOIN:

=TEXTJOIN(" ", TRUE, TRIM(A2), TRIM(B2))

3.2. Chuyển đổi chữ hoa/chữ thường

  • UPPER: chuyển toàn bộ thành chữ hoa.
  • LOWER: chuyển thành chữ thường.
  • PROPER: viết hoa chữ cái đầu mỗi từ.

Ví dụ:

=PROPER(TRIM(A2) & " " & TRIM(B2))

3.3. Ghép nội dung 2 cột kèm theo dữ liệu từ cột khác

Giả sử bạn có 3 cột: Mã SP (A), Tên SP (B), Đơn vị (C) và muốn tạo một cột mô tả dạng “Mã SP – Tên SP (Đơn vị)”.

=CONCAT(A2, " – ", B2, " (", C2, ")")

Hoặc dùng TEXTJOIN:

=TEXTJOIN(" ", TRUE, A2, "–", B2, "(" & C2 & ")")

3.4. Ghép nội dung có điều kiện (IF)

Bạn muốn ghép Tên và Họ chỉ khi Tên không rỗng, ngược lại chỉ hiển thị Họ.

=IF(B2="","",A2 & " " & B2)

Hoặc sử dụng TEXTJOIN với ignore_empty = TRUE:

=TEXTJOIN(" ", TRUE, A2, B2)

4. Tự động hoá quy trình ghép cột bằng Power Query

Khi dữ liệu lớn, việc viết công thức trên từng ô có thể gây chậm và khó bảo trì. Power Query (được tích hợp trong Excel 2026 trở lên) cho phép thực hiện ghép cột một cách linh hoạt và có thể lưu lại như một bước chuyển đổi dữ liệu.

4.1. Bước khởi tạo Power Query

Ghép Nội Dung 2 Cột Trong Excel
Ghép Nội Dung 2 Cột Trong Excel
  1. Chọn bất kỳ ô nào trong bảng dữ liệu.
  2. Vào Data → From Table/Range (hoặc Get & Transform Data).
  3. Power Query Editor mở ra.

4.2. Thực hiện ghép cột

  1. Chọn các cột muốn ghép (ví dụ: Họ và Tên).
  2. Click chuột phải → Merge Columns.
  3. Chọn Separator (dấu ngăn cách) – ví dụ: Space.
  4. Đặt tên cho cột mới (ví dụ: HọTên).

Sau khi hoàn thành, nhấn Close & Load để trả về Excel. Bây giờ mọi thay đổi trong nguồn dữ liệu sẽ tự động cập nhật khi bạn refresh Power Query.

4.3. Lợi ích của Power Query

  • Tái sử dụng: Khi dữ liệu mới được thêm, các bước ghép sẽ tự động áp dụng.
  • Hiệu suất: Xử lý dữ liệu hàng nghìn, hàng triệu bản ghi nhanh hơn so với công thức.
  • Quản lý: Tất cả các bước chuyển đổi được lưu trong một script M, dễ dàng chia sẻ và tài liệu hoá.

5. Sử dụng VBA để ghép cột tự động

Đối với các nhà phát triển hoặc người dùng muốn tạo macro tùy chỉnh, VBA (Visual Basic for Applications) cung cấp khả năng ghép cột qua mã lệnh.

5.1. Mẫu macro ghép 2 cột

Sub GhepHaiCot() Dim ws As Worksheet Dim lastRow As Long Dim i As Long Set ws = ThisWorkbook.Sheets("Sheet1") ' Thay tên sheet nếu cần lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row ' Giả sử cột A có dữ liệu For i = 2 To lastRow ' Bắt đầu từ dòng 2 (giả sử có tiêu đề) ws.Cells(i, "C").Value = Trim(ws.Cells(i, "A").Value) & " " & Trim(ws.Cells(i, "B").Value) Next i MsgBox "Hoàn tất ghép nội dung 2 cột!", vbInformation
End Sub
  • Giải thích: Vòng lặp duyệt từng hàng, ghép nội dung cột A và B (đã qua hàm Trim) và ghi vào cột C.
  • Tùy biến: Thay " " bằng dấu ngăn cách khác, hoặc thêm điều kiện If để bỏ qua các ô rỗng.

5.2. Gán macro vào nút bấm

  1. Vào Developer → Insert → Button (Form Control).
  2. Vẽ nút trên sheet, chọn macro GhepHaiCot.
  3. Đặt tên cho nút (ví dụ: “Ghép Họ – Tên”).

Giờ khi người dùng nhấn nút, macro sẽ tự động thực hiện ghép mà không cần công thức.

6. Các lưu ý và lỗi thường gặp

LỗiNguyên nhânCách khắc phục
#VALUE!Một trong các ô chứa lỗi (ví dụ: #N/A, #DIV/0!).Kiểm tra và làm sạch dữ liệu, hoặc dùng hàm IFERROR để bỏ qua lỗi: =IFERROR(A2 & " " & B2, "").
Khoảng trắng thừaDữ liệu nhập tay có dấu cách đầu/cuối.Dùng TRIM trước khi ghép.
Kết quả không cập nhậtSử dụng công thức cố định (ví dụ $A$2) hoặc không kéo công thức xuống hết.Đảm bảo công thức là tương đối (A2, B2) và kéo xuống đủ dòng.
Ghép không đúng thứ tựSắp xếp dữ liệu sau khi ghép mà không cập nhật công thức.Sử dụng Table (Ctrl+T) để công thức tự động mở rộng khi thêm dòng.
Không nhận diện ký tự ngăn cách trong TEXTJOINĐặt delimiter sai định dạng (ví dụ: không đặt trong dấu ngoặc kép).Kiểm tra lại cú pháp: TEXTJOIN(",", TRUE, A2:B2).

7. Thực hành: 5 Bài tập thực tế

Bài 1: Ghép địa chỉ khách hàng

A (Số nhà)B (Đường)C (Quận)D (Kết quả)
123Lê Lợi1=TEXTJOIN(“, “, TRUE, A2, B2, C2) → 123, Lê Lợi, 1

Bài 2: Tạo mã nhân viên từ họ và số thứ tự

A (Họ)B (STT)C (Mã NV)
Nguyễn001=UPPER(LEFT(TRIM(A2),2)) & “-” & TEXT(B2,”000″) → NG-001

Bài 3: Ghép mô tả sản phẩm (điều kiện)

A (Tên SP)B (Màu)C (Kích thước)D (Mô tả)
ÁoĐỏL=IF(B2=””,””,A2 & ” (” & B2 & “, ” & C2 & “)”) → Áo (Đỏ, L)

Bài 4: Sử dụng Power Query để ghép cột ngày tháng

  • Dữ liệu: Ngày, Tháng, Năm.
  • Power Query → Merge Columns → Separator / → Kết quả: dd/mm/yyyy.

Bài 5: Macro VBA ghép nhiều cột thành một chuỗi JSON

Sub GhepJSON() Dim ws As Worksheet, lastRow As Long, i As Long, jsonStr As String Set ws = Sheets("Data") lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row For i = 2 To lastRow jsonStr = "{""id"":" & ws.Cells(i, "A").Value & _ ",""name"":""" & ws.Cells(i, "B").Value & _ """,""price"":" & ws.Cells(i, "C").Value & "}" ws.Cells(i, "D").Value = jsonStr Next i
End Sub

Kết quả: Dòng 2 sẽ có {"id":1,"name":"Sản phẩm A","price":100}.

8. Khi nào nên chọn phương pháp nào?

Tiêu chíDùng dấu “&”CONCAT / CONCATENATETEXTJOINPower QueryVBA
Dữ liệu nhỏ (dưới 10.000 hàng)✅✅✅ (đặc biệt khi có ô trống)❌ (quá phức)✅ (nếu muốn tự động hoá)
Cần bỏ qua ô trống tự động❌❌✅✅✅ (có thể lập trình)
Yêu cầu tùy chỉnh phức tạp (điều kiện, định dạng)✅ (kết hợp IF)✅ (kết hợp IF)✅ (kết hợp IF)✅ (công thức M)✅ (toàn quyền)
Dữ liệu thay đổi thường xuyên, cần refresh❌❌❌✅✅ (macro có thể refresh)
Người dùng không quen VBA✅✅✅✅ (giao diện)❌
Hiệu suất khi xử lý hàng triệu bản ghi❌❌❌✅ (Power Query)✅ (macro nhanh)

9. Kết luận

Việc ghép nội dung 2 cột trong Excel không còn là một thách thức khó khăn nữa khi bạn đã nắm vững các công cụ và kỹ thuật sau:

  1. Công thức cơ bản: dấu “&”, CONCAT, TEXTJOIN.
  2. Xử lý dữ liệu sạch: TRIM, UPPER, PROPER, IFERROR.
  3. Power Query: giải pháp mạnh mẽ cho dữ liệu lớn và tự động hoá.
  4. VBA: tùy biến tối đa, phù hợp cho các quy trình phức tạp hoặc khi muốn tích hợp vào nút bấm.

Bạn có thể lựa chọn phương pháp phù hợp nhất dựa trên độ lớn của dữ liệu, tính linh hoạt và kiến thức kỹ thuật của mình. Khi áp dụng đúng, việc ghép cột sẽ giúp bạn tiết kiệm thời gian, giảm lỗi nhập liệu và tạo ra các báo cáo, danh sách chuyên nghiệp hơn.

Hy vọng bài viết này đã cung cấp cho bạn một cẩm nang toàn diện để thực hiện mọi nhu cầu ghép nội dung trong Excel. Hãy thử ngay trên tập dữ liệu của mình, và đừng ngần ngại kết hợp các phương pháp (ví dụ: công thức trong Power Query hoặc macro VBA) để đạt được hiệu quả tối ưu.

Chúc bạn thành công!

⚠️
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