Có thể bạn quan tâm: Đưa Hình Ảnh Vào Excel: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao
Mở Đầu
Excel là một trong những công cụ mạnh mẽ nhất để xử lý dữ liệu, và một trong những nhu cầu phổ biến nhất của người dùng là đếm số lần xuất hiện của một ký tự hoặc một chuỗi ký tự trong một ô, một cột, hoặc toàn bộ bảng tính. Trong bài viết này, chúng ta sẽ tập trung vào việc đếm dấu “x” – một ký tự thường xuất hiện trong các bảng dữ liệu như đánh dấu, ký hiệu, hoặc thậm chí là một phần của mã sản phẩm. Bằng cách kết hợp các hàm có sẵn, các kỹ thuật nâng cao và một số mẹo thực tiễn, bạn sẽ có thể thực hiện việc này một cách nhanh chóng và chính xác.
Lưu ý: Bài viết sẽ cung cấp nhiều cách tiếp cận, từ cách đơn giản nhất dành cho người mới bắt đầu tới các phương pháp phức tạp hơn dành cho người dùng chuyên sâu. Bạn có thể lựa chọn phương pháp phù hợp với nhu cầu và trình độ của mình.
Có thể bạn quan tâm: Đo Kích Thước Trong Excel: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao
1. Hiểu Rõ Yêu Cầu Đếm Dấu “x”
Trước khi đi vào chi tiết kỹ thuật, chúng ta cần xác định rõ điểm cần đếm:
| Trường hợp | Mô tả | Ví dụ |
|---|---|---|
| Đếm “x” trong một ô | Đếm số lần ký tự “x” xuất hiện trong một ô duy nhất. | Ô A1 chứa “axbxcx”, kết quả = 3. |
| Đếm “x” trong một cột | Đếm tổng số “x” trong toàn bộ cột (có thể có nhiều ô). | Cột A có 10 ô, tổng số “x” = 27. |
| Đếm “x” trong một vùng dữ liệu | Đếm tổng số “x” trong một phạm vi ô (ví dụ: A1:C10). | Vùng A1:C10 chứa 150 ký tự “x”. |
| Đếm “x” có phân biệt chữ hoa/thường | Chỉ tính “x” thường, bỏ qua “X”. | “xXx” → kết quả 2 (nếu phân biệt). |
| Đếm “x” không phân biệt chữ hoa/thường | Tính cả “x” và “X”. | “xXx” → kết quả 3. |
| Đếm “x” kèm điều kiện | Đếm “x” chỉ trong các ô thỏa mãn một điều kiện nào đó (ví dụ: ô có giá trị > 100). | Đếm “x” trong các ô giá trị > 100. |
Việc xác định rõ yêu cầu sẽ giúp chúng ta chọn hàm và công thức phù hợp nhất.
Có thể bạn quan tâm: Cách Xếp Alpha B Trong Excel: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao
2. Các Hàm Cơ Bản Để Đếm Ký Tự Trong Excel
2.1. Hàm LEN – Độ Dài Chuỗi
LEN(text) trả về độ dài (số ký tự) của một chuỗi. Đây là hàm nền tảng để tính số ký tự trước và sau khi loại bỏ một ký tự nhất định.
2.2. Hàm SUBSTITUTE – Thay Thế Chuỗi
SUBSTITUTE(text, old_text, new_text, instance_num) thay thế một chuỗi con (old_text) bằng một chuỗi khác (new_text). Khi new_text để trống (""), chúng ta thực chất xóa ký tự cần đếm ra khỏi chuỗi.
2.3. Công Thức Cơ Bản Đếm “x” Trong Một Ô
Công thức:
=LEN(A1)-LEN(SUBSTITUTE(A1,"x",""))
Giải thích:
LEN(A1)– Độ dài tổng của ô A1.SUBSTITUTE(A1,"x","")– Loại bỏ tất cả ký tự “x” khỏi A1.LEN(SUBSTITUTE(...))– Độ dài sau khi đã xóa “x”.- Hiệu số giữa hai độ dài chính là số lần “x” xuất hiện.
Lưu ý: Công thức này phân biệt chữ hoa và chữ thường. Nếu muốn không phân biệt, hãy chuyển nội dung thành chữ thường hoặc chữ hoa trước khi so sánh (sử dụng
LOWERhoặcUPPER).
2.4. Đếm “x” Không Phân Biệt Chữ Hoa/Thường
=LEN(LOWER(A1))-LEN(SUBSTITUTE(LOWER(A1),"x",""))
Hoặc:
=LEN(UPPER(A1))-LEN(SUBSTITUTE(UPPER(A1),"X",""))
2.5. Đếm “x” Trong Một Cột Hoặc Vùng Dữ Liệu
Với một cột (ví dụ cột A từ A2 tới A100):
=SUMPRODUCT(LEN(A2:A100)-LEN(SUBSTITUTE(A2:A100,"x","")))
Với một vùng dữ liệu (A2:C100):
=SUMPRODUCT(LEN(A2:C100)-LEN(SUBSTITUTE(A2:C100,"x","")))
Giải thích SUMPRODUCT: Hàm này cho phép thực hiện phép tính mảng mà không cần nhập công thức dạng mảng (Ctrl+Shift+Enter). Nó cộng dồn kết quả của từng ô trong phạm vi.
3. Các Phương Pháp Nâng Cao
3.1. Sử Dụng Hàm ARRAYFORMULA (Google Sheets) Hoặc CTRL+SHIFT+ENTER (Excel) Để Đếm “x” Với Điều Kiện
Giả sử chúng ta muốn đếm “x” chỉ trong các ô có giá trị > 100 trong cột B:
=SUMPRODUCT((B2:B100>100)(LEN(A2:A100)-LEN(SUBSTITUTE(A2:A100,"x",""))))
Ở đây:
(B2:B100>100)tạo một mảng 1/0 (TRUE/FALSE) cho mỗi dòng.- Nhân với kết quả đếm “x” sẽ chỉ giữ lại các giá trị thỏa điều kiện.
3.2. Đếm “x” Trong Các Ô Được Đánh Dấu Bằng Conditional Formatting
Nếu bạn đã sử dụng Conditional Formatting để tô màu các ô có chứa “x”, bạn có thể dùng Custom Function trong VBA để đếm nhanh:
Function CountXInRange(rng As Range) As Long Dim cell As Range, total As Long For Each cell In rng total = total + (Len(cell.Value) - Len(Replace(cell.Value, "x", ""))) Next cell CountXInRange = total
End Function
Sau khi lưu macro, công thức trong Excel sẽ là:
=CountXInRange(A2:C100)
3.3. Đếm “x” Với Đa Ngôn Ngữ (Unicode)
Nếu dữ liệu của bạn chứa ký tự “x” kiểu Unicode (ví dụ: ký tự La-tinh “𝑥” hoặc ký tự La-tinh in nghiêng), hàm SUBSTITUTE vẫn hoạt động nếu bạn nhập đúng ký tự. Tuy nhiên, nếu có nhiều dạng “x”, bạn có thể chuỗi thay thế nhiều lần:
=LEN(A1)-LEN(SUBSTITUTE(SUBSTITUTE(A1,"x",""),"𝑥",""))
3.4. Đếm “x” Trong Công Thức (Formula) Thay Vì Văn Bản
Excel không cho phép trực tiếp đọc nội dung công thức qua hàm chuẩn. Tuy nhiên, bạn có thể dùng VBA để lấy công thức của một ô và đếm ký tự “x”:
Function CountXInFormula(rng As Range) As Long Dim frm As String frm = rng.Formula CountXInFormula = Len(frm) - Len(Replace(frm, "x", ""))
End Function
Sử dụng:
=CountXInFormula(A1)
3.5. Đếm “x” Khi Dữ Liệu Là Liên Kết (Hyperlink)
Nếu ô chứa hyperlink và bạn muốn đếm “x” trong địa chỉ URL, có thể dùng:
=LEN(HYPERLINK(A1))-LEN(SUBSTITUTE(HYPERLINK(A1),"x",""))
Tuy nhiên, hàm HYPERLINK chỉ trả về giá trị hiển thị, không phải URL thực. Để lấy URL thực, cần VBA:
Function GetHyperlinkAddress(rng As Range) As String If rng.Hyperlinks.Count > 0 Then GetHyperlinkAddress = rng.Hyperlinks(1).Address Else GetHyperlinkAddress = "" End If
End Function Function CountXInHyperlink(rng As Range) As Long Dim addr As String addr = GetHyperlinkAddress(rng) CountXInHyperlink = Len(addr) - Len(Replace(addr, "x", ""))
End Function
4. Thực Hành: Ví Dụ Cụ Thể

Có thể bạn quan tâm: Cách Đặt Mật Khẩu Cho Excel 2026: Hướng Dẫn Chi Tiết Từ A Đến Z
4.1. Ví Dụ 1 – Đếm “x” Trong Danh Sách Mã Sản Phẩm
Giả sử cột A chứa các mã sản phẩm:
| A |
|---|
| ABX123 |
| XZ12x |
| 12X34 |
| xxxxxx |
| 12345 |
Mục tiêu: Đếm tổng số “x” (không phân biệt) trong cột A.
Công thức:
=SUMPRODUCT(LEN(UPPER(A1:A5))-LEN(SUBSTITUTE(UPPER(A1:A5),"X","")))
Kết quả: 9 (ABX123 có 1, XZ12x có 2, 12X34 có 1, xxxxxx có 6, 12345 có 0).
4.2. Ví Dụ 2 – Đếm “x” Chỉ Trong Các Ô Có Giá Trị > 50
Cột A là mô tả, cột B là số lượng:
| A | B |
|---|---|
| abcxdef | 30 |
| xxxxxxx | 60 |
| xyz | 55 |
| axbxcxd | 10 |
Công thức:
=SUMPRODUCT((B2:B5>50)(LEN(A2:A5)-LEN(SUBSTITUTE(A2:A5,"x",""))))
Kết quả: 9 (ô B2 và B3 thỏa >50, tương ứng 7 + 2 = 9).
4.3. Ví Dụ 3 – Đếm “x” Trong Một Bảng Pivot
Nếu bạn muốn đếm “x” trong dữ liệu gốc và hiển thị kết quả trong Pivot Table, bạn có thể tạo Calculated Field:
- Chọn Pivot Table → Fields, Items & Sets → Calculated Field.
- Đặt tên “CountX”.
- Công thức:
=LEN(FieldName)-LEN(SUBSTITUTE(FieldName,"x","")). - Thêm vào Values → Đặt Summarize Values By → Sum.
Kết quả sẽ hiển thị tổng số “x” cho mỗi nhóm.
4.4. Ví Dụ 4 – Đếm “x” Trong Ô Được Nhập Dữ Liệu Tự Động (Data Validation)
Nếu bạn có ô nhập dữ liệu được kiểm soát bằng Data Validation (ví dụ: chỉ cho phép nhập “x” hoặc “o”), và muốn đếm số lần “x” đã được nhập:
=COUNTIF(A1:A100,"x")
Trong trường hợp người dùng có thể nhập chuỗi dài chứa “x”, kết hợp COUNTIF và hàm tùy chỉnh:
=SUMPRODUCT(--(ISNUMBER(SEARCH("x",A1:A100))))
Hoặc dùng công thức đã nêu ở trên để đếm số ký tự “x” trong mỗi ô.
5. Tối Ưu Hóa Và Xử Lý Lỗi
5.1. Xử Lý Ô Trống Hoặc Không Phải Văn Bản
Khi ô chứa số hoặc lỗi (#N/A, #VALUE!), hàm LEN sẽ trả về lỗi. Để tránh, dùng IFERROR hoặc IF:
=IFERROR(LEN(A1)-LEN(SUBSTITUTE(A1,"x","")),0)
Với phạm vi:
=SUMPRODUCT(IFERROR(LEN(A2:A100)-LEN(SUBSTITUTE(A2:A100,"x","")),0))
Nhớ nhấn Ctrl+Shift+Enter nếu không dùng SUMPRODUCT.
5.2. Hiệu Suất Khi Xử Lý Dữ Liệu Lớn
- Tránh dùng hàm mảng phức tạp trên toàn bộ sheet (ví dụ
A:A). Hãy giới hạn phạm vi thực tế. - Sử dụng Helper Columns: Tạo một cột phụ để tính số “x” cho mỗi ô, sau đó dùng
SUMđể tổng hợp. Điều này giảm tính toán lặp lại. - VBA: Khi dữ liệu lên tới hàng triệu, VBA có thể nhanh hơn nếu viết một macro tối ưu (sử dụng mảng trong VBA).
5.3. Đảm Bảo Độ Chính Xác Khi Dữ Liệu Có Dấu Cách, Dấu Gạch Nối
Nếu muốn đếm “x” chỉ khi nó đứng độc lập (không phải một phần của từ), có thể dùng hàm TEXTSPLIT (Excel 365) hoặc FILTERXML để tách từ:
=SUMPRODUCT(--(TRIM(MID(SUBSTITUTE(" "&A1&" "," ",REPT(" ",LEN(A1))), (ROW(INDIRECT("1:"&LEN(A1))) -1)LEN(A1)+1, LEN(A1)))="x"))
Đây là công thức phức tạp, nhưng cho phép đếm “x” như một từ riêng biệt.
6. Các Công Cụ Bổ Sung Ngoài Excel
6.1. Power Query
Power Query (Get & Transform) cho phép bạn truy vấn và biến đổi dữ liệu trước khi đưa vào bảng tính. Để đếm “x” trong một cột:
- Load dữ liệu vào Power Query.
- Thêm Custom Column với công thức:
m Text.Length(Column) - Text.Length(Text.Replace(Column, "x", ""))
- Sau khi thêm, bạn có thể Sum cột mới để có tổng số “x”.
Power Query rất mạnh khi làm việc với dữ liệu lớn và cần tự động hoá quy trình.
6.2. Power Pivot & DAX
Nếu bạn đang làm việc với mô hình dữ liệu (Data Model) và muốn đếm “x” trong một cột tính toán, dùng DAX:
CountX = SUMX( Table, LEN(TableColumn) - LEN(SUBSTITUTE(TableColumn, "x", ""))
)
Hoặc nếu muốn đếm “x” không phân biệt:
CountX = SUMX( Table, LEN(UPPER(TableColumn)) - LEN(SUBSTITUTE(UPPER(TableColumn), "X", ""))
)
6.3. Google Sheets
Trong Google Sheets, công thức tương tự:
=ARRAYFORMULA(LEN(A1:A)-LEN(SUBSTITUTE(A1:A,"x","")))
Hoặc dùng REGEXCOUNT (được hỗ trợ trong một số add‑on) để đếm:
=SUM(REGEXCOUNT(A1:A,"x"))
7. Thực Hành Tự Đánh Giá – Bài Tập
- Bài 1: Trong cột D, có các chuỗi ký tự. Viết công thức để đếm số lần “x” (không phân biệt) trong toàn bộ cột D, bỏ qua các ô trống.
- Bài 2: Tạo một bảng Pivot hiển thị tổng số “x” cho mỗi nhóm “Category” (cột B). Sử dụng Calculated Field.
- Bài 3: Sử dụng VBA viết một hàm
CountXIfnhận vào 2 đối số: phạm vi ô và điều kiện (ví dụ “>100”). Hàm trả về tổng số “x” trong các ô thỏa điều kiện. - Bài 4: Dùng Power Query để tạo cột “X_Count” cho một bảng dữ liệu, sau đó tính tổng “X_Count” bằng một bước “Group By”.
Gợi ý: Khi làm bài 3, bạn có thể dùng
Application.Evaluateđể xử lý điều kiện động.
8. Kết Luận
Việc đếm dấu “x” trong Excel không chỉ là một thao tác đơn giản mà còn mở ra nhiều khả năng xử lý dữ liệu phức tạp hơn khi kết hợp với các hàm, công cụ và ngôn ngữ lập trình phụ trợ. Từ công thức cơ bản LEN + SUBSTITUTE cho tới Power Query, Power Pivot, và VBA, bạn có thể tùy chỉnh để đáp ứng mọi yêu cầu thực tiễn – dù là đếm trong một ô, một cột, một vùng dữ liệu, hoặc thậm chí là trong các công thức và hyperlink.
Những Điểm Chính Nhớ Lại
| Phương pháp | Khi nào dùng | Ưu điểm | Nhược điểm |
|---|---|---|---|
LEN + SUBSTITUTE | Đếm nhanh trong ô hoặc phạm vi nhỏ | Đơn giản, không cần VBA | Không linh hoạt với điều kiện phức tạp |
SUMPRODUCT | Đếm trong cột hoặc vùng lớn, có điều kiện | Không cần công thức mảng | Có thể chậm nếu dữ liệu quá lớn |
| VBA Custom Function | Đếm trong công thức, hyperlink, hoặc khi cần tùy biến | Tốc độ cao, linh hoạt | Yêu cầu kiến thức lập trình, bảo mật macro |
| Power Query | Xử lý dữ liệu lớn, tự động hoá | Giao diện trực quan, hiệu suất tốt | Cần học Power Query |
| DAX (Power Pivot) | Mô hình dữ liệu, báo cáo động | Tích hợp với Power BI | Yêu cầu hiểu DAX |
Bạn đã nắm vững các công cụ và kỹ thuật cần thiết để đếm dấu “x” một cách hiệu quả trong mọi tình huống. Hãy áp dụng ngay vào công việc của mình, và đừng ngại khám phá thêm các tính năng nâng cao khác của Excel để tối ưu hoá quy trình làm việc.
Chúc bạn thành công!

Tiến sĩ Lê Thống Nhất sinh năm 1955 tại Nghệ An, là nhà giáo, nhà báo và doanh nhân trong lĩnh vực giáo dục. Ông từng giảng dạy Toán học tại Trường THPT Chuyên Phan Bội Châu và đảm nhiệm nhiều vai trò trong ngành giáo dục, từ viết sách, biên soạn tài liệu đến sáng lập các dự án hỗ trợ học tập trực tuyến.
Ông là người sáng lập BigSchool – nền tảng giáo dục trực tuyến kết nối giáo viên và học sinh cả nước. Ngoài ra, ông còn nổi tiếng với vai trò tác giả, diễn giả truyền cảm hứng và khách mời trên nhiều chương trình truyền hình, trong đó có “Ai là triệu phú” trên truyền hình VTV.
Trong suốt sự nghiệp, Tiến sĩ Lê Thống Nhất đã nhận nhiều giải thưởng giáo dục và được biết đến như một người luôn đổi mới, ứng dụng công nghệ vào dạy và học, góp phần lan tỏa tri thức và niềm say mê học tập cho thế hệ trẻ.
