Lọc Các Vùng Dữ Liệu Có Trộn Merge Trong Excel

Giới thiệu chung

Trong công việc quản lý dữ liệu, Excel luôn là một công cụ không thể thiếu. Khi làm việc với các bảng tính lớn, người dùng thường xuyên gặp phải tình trạng merge cells (gộp ô) để tạo bố cục đẹp mắt hoặc để nhóm các dòng/ cột có cùng tính chất. Tuy nhiên, khi bắt đầu thực hiện các thao tác xử lý dữ liệu như lọc, phân tích侧, trích xuất, merge cells thường gây ra nhiều khó khăn: các hàm truy vấn không hoạt động ίδιο, dữ liệu bị lẫn lộn, và các công thức tính toán trở nên phức tạp. Do đó, việc lọc các vùng dữ liệu có merge là một bước quan trọng để chuẩn bị dữ liệu sạch và có thể thao tác được.

Bài viết dưới đây sẽ đi sâu vào cách lọc các vùng merge trong Excel, từ các phương pháp thủ công, sử dụng công cụ tìm kiếm và lọc, tới viết mã VBA tùy chỉnh. Bạn sẽ nhận được một bộ công cụ toàn diện giúp xử lý dữ liệu merge một cách nhanhântico, chính xác và hiệu quả nhất.

1. Tại sao cần 埋 merge cells?

1.1. Tác động tới tính nhất quán dữ liệu

  • Merge cell tạo ra ô “đặc biệt”: Khi một ô được merge, giá trị thực sự chỉ nằm trong ô “đỉnh” (hoặc ô góc trên bên trái). Các ô khác trong vùng merge không lưu giá trị và không được Excel xem là chứa dữ liệu. Điều này làm cho việc thực hiện các thao tác lọc, sắp xếp, tính toán mất tính nhất quán.
  • Hàm tính toán bị gián đoạn: Ví dụ, =SUM(A1:A10) sẽ bỏ qua các ô meist merge, vì chúng được xem là “ô rỗng” trong phạm vi tính.

1.2. Khó khăn trong việc chia nhỏ dữ liệu

  • Khi dữ liệu được merge, các thao tác xóa, chèn cột/dòng sẽ phá vỡ cấu trúc merge, dẫn tới lỗi dữ liệu.
  • Khi export dữ liệu sang CSV hoặc các hệ thống khác, merge cells có thể bị loại bỏ, gây mất thông tin.

1.3. Rủi ro khi làm việc với Power Query, Power Pivot

  • Các công cụ này thường không hỗ trợ merge cells, khiến dữ liệu không được nhận diện đúng.
  • Khi nhập dữ liệu vào Power BI, merge cells có thể làm chậm quá trình tải dữ liệu và gây ra lỗi “Data type mismatch”.

2. Cách nhận diện merge cells thủ công

2.1. Sử dụng tính năng “Find & Replace”

  1. Chọn toàn bộ bảng tính (Ctrl+A).
  2. Mở hộp thoại “Find & Replace” (Ctrl+F).
  3. Chọn tab “Find” và vào “Options”.
  4. Tick “Format” và click “Format…”.
  5. Trong tab “Alignment”, tick “Merge cells”.
  6. Nhấn “Find All”.

Kết quả sẽ hiển thị danh sách các ô merge trong bảng tính, bao gồm cả vị trí và giá trị.

2.2. Sử dụng Conditional Formatting

  1. Chọn vùng cần kiểm tra.
  2. Vào “Home” → “Conditional Formatting” → “New Rule”.
  3. Chọn “Use a formula to determine which cells to format”.
  4. Nhập công thức: تق=ISMERGED(A1) (các phiên bản Excel mới hỗ trợ hàm ISMERGED).
  5. Đặt màu nền, chẳng hạn màu vàng.
  6. Nhấn OK.

Tất cả các ô merge sẽ được tô màu, giúp bạn nhanh chóng nhận diện.

2.3. Kiểm tra nhanh với “Go To Special”

  1. Chọn vùng cần kiểm tra.
  2. Nhấn F5 → “Special…”.
  3. Chọn “Merge cells” → OK.

Excel sẽ highlight toàn bộ vùng merge.

3. Lọc merge cells bằng công cụ lọc tiêu chuẩn

Với Excel 365, bạn có thể sử dụng tính năng “Filter” mở rộng.

  1. Bật filter: “Data” → “Filter”.
  2. Trong tiêu đề cột, click mũi tên drop‑down.
  3. Chọn “Filter by Color” → “Filter by Cell Color”.
  4. Nếu đã dùng Conditional Formatting để tô màu merge cells, chọn màu đó.

Tuy nhiên, điều này chỉ hoạt động nếu merge cells đã được tô màu; nếu không, bạn cần áp dụng một trong các phương pháp dưới đây.

4. Sử dụng hàm và công thức để đánh dấu merge cells

4.1. Hàm ISMERGED

Excel hondhi 2026 trở lên có hàm ISMERGED (Excel 365, Excel 2026). Hàm trả về TRUE nếu ô được merge.

Công thức:

=ISMERGED(A1)

Bạn có thể áp dụng công thức này trong một cột phụ để đánh dấu:

ABC
Dữ liệuMerge?Giải thích
=ISMERGED(A1)TRUEÔ merge
=ISMERGED(A2)FALSEÔ không merge

Sau đó, lọc cột B để chỉ hiển thị TRUE.

4.2. Công thức tùy chỉnh khi ISMERGED không có sẵn

Nếu phiên bản Excel không hỗ trợ hàm ISMERGED, ta có thể dùng hàm CELL:

=IF(CELL("merge", A1)=1, TRUE, FALSE)

Hoặc dùng GET.CELL trong Name Manager:

  1. Đặt tên mới: IsMerged.
  2. Công thức: =GET.CELL(50,INDIRECT("RC",FALSE)).
  3. Trong ô, dùng: =IsMerged.

Như vậy bạn vẫn có thể lọc merge cells.

5. Viết VBA để lọc merge cells

Khi làm việc với bảng tính lớn, viết targeting code dễ dàng hơn. D열.

);

5.1. Macro đơn giản để lọc merge cells

Sub FilterMergedCells() Dim ws As Worksheet Dim rng As Range Dim i As Long Set ws = ActiveSheet ' Xóa filter cũ On Error Resume Next ws.ShowAllData On Error GoTo 0 ' Tạo cột phụ ws.Columns("Z").Insert Shift:=xlToRight ws.Cells(1, "Z").Value = "Merge Flag" ' Đánh dấu merge cells For i = 1 To ws.Cells(ws.Rows.Count, 1).End(xlUp).Row If ws.Cells(i, 1).MergeCells Then ws.Cells(i, "Z").Value = "Merge" Else ws.Cells(i, "Z").Value = "" End If MPH Next i ' Áp dụng filter ws.Range("A1:Z" & ws.Cells(ws.Rows.Count, 1).End(xlUp).Row).AutoFilter Field:=26, Criteria1:="Merge" MsgBox "Đã lọc त्यस merge cells thành công!"
End Sub

Chạy macro này sẽ:

  • Thêm cột Z để đánh dấu merge cells.
  • Lọc dữ liệu chỉ hiển thị các hàng chứa merge cells.
  • Bạn có thể thay đổi cột đánh dấu tùy ý.

5.2. Macro nângқай để liệt kê merge cells

Lọc Các Vùng Dữ Liệu Có Trộn Merge Trong Excel
Lọc Các Vùng Dữ Liệu Có Trộn Merge Trong Excel
Sub ListMergedCells() Dim ws As Worksheet Dim rng As Range Dim ml As Range Dim i As Long Dim resultWS As Worksheet Dim outputRow As Long Set ws = ActiveSheet Set resultWS = Worksheets.Add resultWS.Name = "MergedCells" resultWS.Cells(1, 1).Value = "Address" resultWS.Cells(1, 2).Value = "Merged Range" resultWS.Cells(1, 3).Value = "Value" outputRow = 2 For Each rng In ws.UsedRange If rng.MergeCells Then Set ml = rng.MergeArea resultWS.Cells(outputRow, 1).Value = rng.Address resultWS.Cells(outputRow, 2).Value = ml.Address resultWS.Cells(outputRow, 3).Value = ml.Cells(1, 1).Value outputRow = outputRow + 1 End If Next rng MsgBox "Đã liệt kê tất cả merge cells vào sheet " & resultWS.Name
End Sub

Macro này tạo một sheet mới సంక列出 tất cả merge cells, bao gồm.
///

6. Các lưu ý khi làm việc với merge cells

#Lưu ýMô tả
1Tránh merge trong dữ liệu đầu vàoNếu có thể, hãy giữ dữ liệu trong cột/ hacer riêng, merge chỉ dùng cho tiêu đề hoặc phần trình bày.
2Sử dụng “Center Across Selection”Thay vì merge cells, chọn cột và dùng “Center Across Selection” (Ràng buộc trùng) giúp dữ liệu vẫn có thể lọc.
3Giải quyết merge cells trước khi copy lên Power QueryPower Query không hỗ trợ merge cells; hãy unmerge trước.
4Đánh dấu merge cells ngay khi tạoThêm cột “Merge?” trong dữ liệu gốc, tránh phải làm lại khi mở file.
5Cân nhắc tính hợp lệ khi xuất dữ liệuKhi xuất sang CSV, merge cells sẽ bị loại bỏ; hãy unmerge trước khi export.
6Sử dụng “Table” (Insert → Table)Khi tạo bảng, merge cells trong tiêu đề có thể gây lỗi.
7Khi merge nhiều dòng/ cột, nhớ giải thích tại vùng mergeĐặt chú thích trong “Comment” hoặc “Data Validation” để người đọc hiểu بالتوضيح.

7. Mẹo nâng cao: Tự động unmerge khi làm sạch dữ liệu

Nếu bạn muốn tự động unmerge mọi merge cells trong một sheet, có thể sử dụng macro:

Sub UnmergeAll() Dim ws As Worksheet Set ws = ActiveSheet ws.Cells.UnMerge MsgBox "Tất cả merge cells đã được unmerge."
End Sub

Đừng quên ghi nhớ dữ liệu trước khi chạy macro này vì unmerge có thể làm mất dữ liệu trong vùng merge.

8. Tích hợp với Power Query

8.1. Trước khi import

  • Mở sheet chứa dữ liệu merge.
  • Chạy macro UnmergeAll hoặc dùng tính năng “Find & Replace” để unmerge thủ công.
  • Lưu lại file dưới dạng Excel (.xlsx).

8.2. Import vào Power Query

  1. “Data” → “Get Data” → “From Workbook”.
  2. Chọn file đã unmerge.
  3. Power Query sẽ nhận diện dữ liệu chính xác.

8.3. Kiểm tra lại dữ liệu

Sau khi import, hãy kiểm tra xem dữ liệu đã được sắp xếp đúng chưa. Nếu vẫn có vấn đề, thử “Remove Duplic 드리” hoặc “Fill Down” để hoàn thiện.

9. Một số tình huống(Read) thường gặp và cách xử lý

9.1. Merge cells trong tiêu đề cột

Nếu merge cells chỉ trong tiêu đề, bạn có thể chuyển sang “Table” và dùng “Header Row”. Khi làm “Table”, merge cells trong tiêu đề sẽ tự động được loại bỏ, nhưng dữ liệu vẫn giữ nguyên.

9.2. Merge cells trong dữ liệu hàng

Khi merge cells trong dữ liệu hàng, thường là do muốn hiển thị “địa chỉ” hay “đối tượng” chung. Bạn nên theo dõi cột “Merge?” và sau đó thực hiện unmerge trước khi phân tích.

9.3. Merge cells trong dữ liệu phức tạp

Nếu merge cells lồng nhau (ví dụ một ô merge chứa một vùng merge khác), macro ListMergedCells sẽ chỉ liệt kê vùng merge lớn nhất. Bạn cần kiểm tra thủ công.

10. Kết luận

Lọc các vùng merge cells trong Excel là một bước cốt lõi để chuẩn bị dữ liệu chuẩn, tránh lỗi khi lọc, sắp xếp, phân tích hoặc xuất dữ liệu. Bạn có thể thực hiện bằng nhiều phương pháp:

  • Thủ công: Find & Replace, Conditional Formatting, Go To Special.
  • Sử dụng hàm: ISMERGED, GET.CELL.
  • Viết VBA: Macro để đánh dấu, lọc, liệt kê hoặc unmerge.
  • Tích hợp với Power Query: Unmerge trước khi import.

Mỗi phương pháp có ưu điểm và hạn chế riêng. Bạn nên chọn phương pháp phù hợp với quy mô dữ liệu凭 và môi trường làm việc của mình. Đặc biệt, hãy tránh sử dụng merge cells trong dữ liệu thực, chỉ dùng cho mục đích trình bày hoặc tiêu đề. Khi cần chia nhỏ dữ liệu, hãy unmerge và lưu trữ dữ liệu gốc một cách hợp lý.

Hy vọng bài viết này đã cung cấp cho bạn một bộ công cụ toàn diện để xử lý merge cells trong Excel một cách nhanh chóng, chính xác và hiệu quả. Chúc bạn thành công trong công việc quản lý dữ liệu!

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