Tải xuống sổ làm việc mẫu
Hướng dẫn này sẽ hướng dẫn bạn cách xóa các ký tự không phải số khỏi ô trong Excel và Google Trang tính.
Xóa các ký tự không phải số
Ghi chú: Các hàm được đề cập trong bài viết này đã được giới thiệu trong Excel 2016. Nếu bạn có phiên bản Excel cũ hơn, vui lòng xem bài viết này: Tìm & Trích xuất Số từ Chuỗi.
Với các Hàm TEXTJOIN, SEQUENCE, MID và IFERROR, bạn có thể xóa tất cả các ký tự không phải số:
1 | = TEXTJOIN ("", TRUE, IFERROR (MID (B3, SEQUENCE (LEN (B3)), 1) +0, "")) |
Hãy xem công thức này hoạt động như thế nào.
Hàm SEQUENCE và LEN trả về một mảng số bắt đầu từ 1 đến độ dài của chuỗi chữ và số của chúng ta. Trong trường hợp của chúng ta, nó sẽ là {1,2,3,4,5,6,7,8,9,10,11,12,13}.
1 | = TEXTJOIN ("", TRUE, IFERROR (MID (B3, {1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13}, 1) +0, "") ) |
Hàm MID trả về các ký tự tương ứng với các vị trí từ mảng số của chúng tôi ở trên:
1 | = TEXTJOIN ("", TRUE, IFERROR ({"1"; "3"; "M"; "o"; "n"; "d"; "a"; "y"; "0"; "1" ; "D"; "a"; "y"} + 0, "")) |
Việc thêm 0 vào mỗi mục trong mảng sẽ gây ra lỗi nếu giá trị là văn bản. Sau đó, Hàm IFERROR sẽ thay thế lỗi bằng một chuỗi trống, chỉ để lại các giá trị số:
1 | = TEXTJOIN ("", TRUE, {1; 3; ""; ""; ""; ""; ""; ""; 0; 1; ""; ""; ""}) |
Cuối cùng, Hàm TEXTJOIN chỉ trả về các ký tự số.
Thay vì sử dụng hàm SEQUENCE, bạn có thể đạt được mục tiêu tương tự bằng cách kết hợp hàm TEXTJOIN với các hàm LEN, INDIRECT, ROW, MID và IFERROR.
1 | = TEXTJOIN ("", TRUE, IFERROR ((MID (B3, ROW (INDIRECT ("1:" & LEN (B3))), 1) * 1), "")) |
Cách xóa các ký tự không phải số trong Google Trang tính
Tất cả các ví dụ được giải thích ở trên hoạt động tương tự trong Google trang tính cũng như trong Excel.