Note: The other languages of the website are Google-translated. Back to English

Tách hoặc xóa các ký tự không phải số khỏi chuỗi văn bản

Đôi khi, bạn có thể cần phải xóa tất cả các ký tự không phải số khỏi chuỗi văn bản và chỉ giữ lại các số như hình minh họa bên dưới. Bài viết này sẽ giới thiệu một số công thức để giải quyết công việc này trong Excel.


Tách hoặc xóa tất cả các ký tự không phải số khỏi chuỗi văn bản có công thức

Trong Excel 2019 và Office 365, một hàm TEXTJOIN mới kết hợp với các hàm IFERROR, MID, ROW và INDIRECT có thể giúp bạn chỉ trích xuất các số từ một chuỗi văn bản, cú pháp chung là:

=TEXTJOIN("",TRUE,IFERROR(MID(text,ROW(INDIRECT("1:100")),1)+0,""))
  • text: chuỗi văn bản hoặc giá trị ô mà bạn muốn xóa tất cả các ký tự không phải số.

1. Vui lòng sao chép hoặc nhập công thức dưới đây vào ô trống mà bạn muốn xuất kết quả:

=TEXTJOIN("",TRUE,IFERROR(MID(A2,ROW(INDIRECT("1:100")),1)+0,""))

2. Và sau đó, nhấn Ctrl + Shift + Enter các phím với nhau để có kết quả đầu tiên, xem ảnh chụp màn hình:

3. Sau đó, chọn ô công thức, rồi kéo chốt điền xuống các ô bạn muốn áp dụng công thức này, chỉ các số đã được trích xuất và tất cả các ký tự không phải số khác đã bị loại bỏ, xem ảnh chụp màn hình:


Giải thích công thức:

ROW (INDIRECT ("1:100"): Số 1: 100 trong công thức INDIRECT có nghĩa là hàm MID đánh giá 100 ký tự của chuỗi văn bản. Mảng này sẽ chứa 100 số như sau: {1; 2; 3; 4; 5; 6; 7; 8 .... 98; 99; 100}.
Chú thích: Nếu chuỗi văn bản của bạn dài hơn nhiều, bạn có thể thay đổi số 100 thành số lớn hơn nếu bạn cần.

MID (A2, ROW (INDIRECT ("1: 100")), 1: Hàm MID này được sử dụng để trích xuất văn bản trong ô A2 để lấy một ký tự và nó sẽ là một mảng như thế này:
{"5"; "0"; "0"; ""; "K"; "u"; "t"; "o"; "o"; "l"; "s"; ""; "f" ; "o"; "r"; ""; "E"; "x"; "c"; "e"; "l"; ""; ""; ""; ""; ""; "". ..}

MID(A2,ROW(INDIRECT("1:100")),1)+0: Thêm giá trị 0 sau khi mảng này được sử dụng để buộc văn bản thành một số, giá trị văn bản số sẽ được chuyển đổi thành số và các giá trị không phải số sẽ được hiển thị dưới dạng giá trị lỗi #VALUE như sau:
{"5"; "0"; "0"; # VALUE!; # VALUE!; # VALUE!; # VALUE!; # VALUE!; # VALUE! !;#GIÁ TRỊ! !;#GIÁ TRỊ!...}

IFERROR(MID(A2,ROW(INDIRECT("1:100")),1)+0: Hàm IFERROR này được sử dụng để thay thế tất cả các giá trị lỗi bằng một chuỗi trống như sau:
{"5"; "0"; "0"; ""; ""; ""; ""; ""; ""; ""; ""; …}

TEXTJOIN("",TRUE,IFERROR(MID(A2,ROW(INDIRECT("1:100")),1)+0,"")): Cuối cùng, hàm TEXTJION này sẽ kết hợp tất cả các giá trị không trống trong mảng được trả về bởi hàm IFFERROR và trả về kết quả.


Chú ý:

1. Với công thức trên, các số sẽ được trả về dạng text, nếu bạn cần giá trị số thực thì hãy áp dụng công thức này, nhớ nhấn Ctrl + Shift + Enter các phím với nhau để có được kết quả chính xác.

=TEXTJOIN("",TRUE,IFERROR(MID(A2,ROW(INDIRECT("1:100")),1)+0,""))+0

2. Trong phiên bản Excel đầu tiên, công thức này sẽ không hoạt động, trong trường hợp này, công thức sau có thể giúp bạn, vui lòng sao chép hoặc nhập công thức này vào một ô trống:

=SUMPRODUCT(MID(0&A2, LARGE(INDEX(ISNUMBER(--MID(A2, ROW(INDIRECT("1:"&LEN(A2))), 1)) * ROW(INDIRECT("1:"&LEN(A2))), 0), ROW(INDIRECT("1:"&LEN(A2))))+1, 1) * 10^ROW(INDIRECT("1:"&LEN(A2)))/10)


Loại bỏ hoặc xóa tất cả các ký tự không phải số khỏi chuỗi văn bản bằng một tính năng dễ dàng

Có lẽ, nhớ lâu quá các công thức trên, sau đây, mình sẽ giới thiệu Kutools cho Excel cho bạn, với nó Xóa ký tự tính năng, bạn có thể xóa các ký tự số, chữ cái, không thể in hoặc chữ và số khỏi chuỗi văn bản chỉ với vài cú nhấp chuột. Nhấp để tải xuống Kutools cho Excel dùng thử miễn phí!


Các hàm tương đối được sử dụng:

  • TEXTJOIN:
  • Hàm TEXTJOIN kết hợp nhiều giá trị từ một hàng, cột hoặc một dải ô với dấu phân cách cụ thể.
  • MID:
  • Hàm MID được sử dụng để tìm và trả về một số ký tự cụ thể từ giữa chuỗi văn bản nhất định.
  • ROW:
  • Hàm ROW trong Excel trả về số hàng của một tham chiếu.
  • INDIRECT:
  • Hàm INDIRECT trong Excel chuyển đổi một chuỗi văn bản thành một tham chiếu hợp lệ.
  • IFERROR:
  • Hàm IFERROR được sử dụng để trả về kết quả tùy chỉnh khi công thức đánh giá lỗi và trả về kết quả bình thường khi không có lỗi nào xảy ra.

Các bài viết khác:

  • Xóa ngắt dòng khỏi ô trong Excel
  • Hướng dẫn này cung cấp ba công thức để giúp bạn xóa ngắt dòng (xảy ra bằng cách nhấn phím Alt + Enter trong một ô) khỏi các ô cụ thể trong Excel.

Các công cụ năng suất văn phòng tốt nhất

Kutools cho Excel - Giúp bạn nổi bật giữa đám đông

Bạn có muốn hoàn thành công việc hàng ngày của mình một cách nhanh chóng và hoàn hảo? Kutools cho Excel mang đến 300 tính năng nâng cao mạnh mẽ (Kết hợp sổ làm việc, tính tổng theo màu, chia nhỏ nội dung ô, chuyển đổi ngày tháng, v.v.) và tiết kiệm 80% thời gian cho bạn.

  • Được thiết kế cho 1500 tình huống công việc, giúp bạn giải quyết 80% các vấn đề về Excel.
  • Giảm hàng nghìn lần nhấp chuột và bàn phím mỗi ngày, giảm mỏi mắt và mỏi tay.
  • Trở thành chuyên gia Excel trong 3 phút. Không còn cần phải nhớ bất kỳ công thức và mã VBA đau đớn nào.
  • 30 ngày dùng thử miễn phí không giới hạn. Đảm bảo hoàn tiền trong 60 ngày. Nâng cấp miễn phí và hỗ trợ trong 2 năm.
Ribbon của Excel (với Kutools cho Excel được cài đặt)

Tab Office - Bật tính năng Đọc và Chỉnh sửa theo Tab trong Microsoft Office (bao gồm Excel)

  • Một giây để chuyển đổi giữa hàng chục tài liệu đang mở!
  • Giảm hàng trăm cú click chuột cho bạn mỗi ngày, tạm biệt bàn tay chuột.
  • Tăng năng suất của bạn lên 50% khi xem và chỉnh sửa nhiều tài liệu.
  • Mang lại các tab hiệu quả cho Office (bao gồm Excel), Giống như Chrome, Firefox và Internet Explorer mới.
Ảnh chụp màn hình của Excel (với Office Tab được cài đặt)
Nhận xét (4)
Chưa có xếp hạng. Hãy là người đầu tiên xếp hạng!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Cảm ơn vì điều đó. Công thức tuyệt vời. Làm cách nào để thay đổi nó để nếu ô chỉ chứa các chữ cái, công thức sẽ nhập vào ô kết quả là 0 (thay vì chỉ để trống như hiện tại)? một câu lệnh IF khác nhưng tôi không đi được xa lắm.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, Glenn, Để hiển thị kết quả dưới dạng ô trống chứ không phải số không, vui lòng áp dụng công thức sau:=IF(SUM(LEN(A2)-LEN(SUBSTITUTE(A2, {"0","1","2","3","4","5","6","7","8","9"}, "")))>0, SUMPRODUCT(MID(0&A2, LARGE(INDEX(ISNUMBER(--MID(A2,ROW(INDIRECT("$1:$"&LEN(A2))),1))* ROW(INDIRECT("$1:$"&LEN(A2))),0), ROW(INDIRECT("$1:$"&LEN(A2))))+1,1) * 10^ROW(INDIRECT("$1:$"&LEN(A2)))/10),"")

Hãy cố gắng, hy vọng nó có thể giúp bạn!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Chà, điều đó sẽ mất một chút thời gian để tiêu hóa 😋 Cảm ơn bạn đã dành thời gian trả lời 👍
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Công thức này cho cài đặt tiếng Pháp là gì?
Không có bình luận nào được đăng ở đây
Để lại ý kiến ​​của bạn
Đăng với tư cách khách
×
Đánh giá bài viết này:
0   Nhân vật
Các vị trí được đề xuất