Descărcați exemplul de registru de lucru
Acest tutorial va fi vă arată cum să eliminați caractere nenumerice din celule în Excel și Google Sheet.
Eliminați caracterele nenumerice
Notă: Funcțiile menționate în acest articol au fost introduse în Excel 2016. Dacă aveți o versiune mai veche de Excel, consultați acest articol: Găsiți și extrageți numărul din șir.
Cu funcțiile TEXTJOIN, SEQUENCE, MID și IFERROR puteți elimina toate caracterele nenumerice:
1 | = TEXTJOIN ("", TRUE, IFERROR (MID (B3, SEQUENCE (LEN (B3)), 1) +0, "")) |
Să vedem cum funcționează această formulă.
Funcțiile SEQUENCE și LEN returnează o serie de numere începând de la 1 până la lungimea șirului nostru alfanumeric. În cazul nostru va fi {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, "") ) |
Funcția MID returnează caracterele corespunzătoare pozițiilor din matricea noastră numerică de mai sus:
1 | = TEXTJOIN ("", TRUE, IFERROR ({"1"; "3"; "M"; "o"; "n"; "d"; "a"; "y"; "0"; "1" ; "D"; "a"; "y"} + 0, "")) |
Adăugarea 0 la fiecare element din matrice va provoca o eroare dacă valoarea este text. Apoi, funcția IFERROR va înlocui eroarea cu un șir gol, lăsând doar valorile numerice:
1 | = TEXTJOIN ("", ADEVĂRAT, {1; 3; ""; ""; ""; ""; ""; ""; 0; 1; ""; ""; ""}) |
În sfârșit, funcția TEXTJOIN returnează numai caracterele numerice.
În loc să utilizați funcția SEQUENCE, puteți atinge același obiectiv prin combinarea funcției TEXTJOIN cu funcțiile LEN, INDIRECT, ROW, MID și IFERROR.
1 | = TEXTJOIN ("", TRUE, IFERROR ((MID (B3, ROW (INDIRECT ("1:" & LEN (B3))), 1) * 1), "")) |
Cum se elimină caractere nenumerice din Foi de calcul Google
Toate exemplele explicate mai sus funcționează la fel în foile Google ca în Excel.