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

Îndepărtați sau eliminați caractere nenumerice din șirurile de text

Uneori, poate fi necesar să eliminați toate caracterele nenumerice din șirurile de text și să păstrați doar numerele așa cum se arată în imaginea de mai jos. Acest articol va introduce câteva formule pentru rezolvarea acestei sarcini în Excel.


Îndepărtați sau eliminați toate caracterele nenumerice din șirurile de text cu formule

În Excel 2019 și Office 365, o nouă funcție TEXTJOIN care se combină cu funcțiile IFERROR, MID, ROW și INDIRECT vă poate ajuta să extrageți numai numere dintr-un șir de text, sintaxa generică este:

=TEXTJOIN("",TRUE,IFERROR(MID(text,ROW(INDIRECT("1:100")),1)+0,""))
  • text: șirul de text sau valoarea celulei din care doriți să eliminați toate caracterele nenumerice.

1. Vă rugăm să copiați sau să introduceți formula de mai jos într-o celulă goală unde doriți să afișați rezultatul:

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

2. Și apoi, apăsați Ctrl + Shift + Enter tastele împreună pentru a obține primul rezultat, vezi captura de ecran:

3. Apoi, selectați celula de formulă, apoi glisați mânerul de umplere în jos în celulele pe care doriți să le aplicați această formulă, au fost extrase numai numerele și toate celelalte caractere non-numerice au fost dezbrăcate, vedeți captura de ecran:


Explicația formulei:

ROW (INDIRECT ("1:100"): Numărul 1: 100 din formula INDIRECT înseamnă că funcția MID evaluează 100 de caractere ale șirului de text. Această matrice va conține 100 de numere ca aceasta: {1; 2; 3; 4; 5; 6; 7; 8 ... 98; 99; 100}.
notițe: Dacă șirul dvs. de text este mult mai lung, puteți schimba numărul 100 la un număr mai mare după cum aveți nevoie.

MID (A2, ROW (INDIRECT ("1: 100")), 1: Această funcție MID este utilizată pentru a extrage text în celula A2 pentru a obține un caracter și va avea o matrice ca aceasta:
{"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: Adăugarea valorii 0 după ce această matrice este utilizată pentru a forța textul la un număr, valoarea textului numeric va fi convertită în număr, iar valorile nenumerice vor fi afișate ca valoare de eroare #VALUE ca aceasta:
{"5"; "0"; "0"; # VALOR!; # VALOR!; # VALOR!; # VALOR!; # VALOR!; # VALOR! !;#VALOARE! !;#VALOARE!...}

IFERROR(MID(A2,ROW(INDIRECT("1:100")),1)+0: Această funcție IFERROR este utilizată pentru a înlocui toate valorile de eroare cu un șir gol ca acesta:
{"5"; "0"; "0"; ""; ""; ""; ""; ""; ""; ""; ""; ...}

TEXTJOIN("",TRUE,IFERROR(MID(A2,ROW(INDIRECT("1:100")),1)+0,"")): În cele din urmă, această funcție TEXTJION va combina toate valorile ne-goale din matrice care au fost returnate de funcția IFFERROR și returnează rezultatul.


notițe:

1. Cu formula de mai sus, numerele vor fi returnate ca format text, dacă aveți nevoie de o valoare numerică reală, vă rugăm să aplicați această formulă, nu uitați să apăsați Ctrl + Shift + Enter tastele împreună pentru a obține rezultatul corect.

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

2. În versiunile anterioare Excel, această formulă nu va funcționa, în acest caz, următoarea formulă vă poate ajuta, vă rugăm să copiați sau să introduceți această formulă într-o celulă goală:

=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)


Îndepărtați sau eliminați toate caracterele nenumerice din șirurile de text cu o caracteristică ușoară

Poate că este prea mult să ne amintim de formulele de mai sus, aici, voi introduce Kutools pentru Excel pentru tine, cu Eliminați caractere caracteristică, puteți elimina caractere numerice, alfabetice, neprimabile sau alfanumerice din șirurile de text cu doar câteva clicuri. Faceți clic pentru a descărca Kutools pentru Excel pentru încercare gratuită!


Funcții relative utilizate:

  • TEXTJOIN:
  • Funcția TEXTJOIN unește mai multe valori dintr-un rând, coloană sau dintr-o gamă de celule cu delimitator specific.
  • MID:
  • Funcția MID este utilizată pentru a găsi și a returna un anumit număr de caractere din mijlocul șirului de text dat.
  • ROW:
  • Funcția Excel ROW returnează numărul rândului unei referințe.
  • INDIRECT:
  • Funcția Excel INDIRECT convertește un șir de text într-o referință validă.
  • IFERROR:
  • Funcția IFERROR este utilizată pentru a returna un rezultat personalizat atunci când o formulă evaluează o eroare și pentru a returna un rezultat normal atunci când nu se produce nicio eroare.

Mai multe articole:


Cele mai bune instrumente de productivitate Office

Kutools pentru Excel - Vă ajută să vă distingeți de mulțime

Doriți să vă finalizați munca zilnică rapid și perfect? Kutools pentru Excel aduce 300 de funcții avansate puternice (Combinați registre de lucru, sumă după culoare, divizați conținutul celulei, convertiți data și așa mai departe ...) și economisiți 80% timp pentru dvs.

  • Conceput pentru 1500 de scenarii de lucru, vă ajută să rezolvați 80% probleme Excel.
  • Reduceți mii de clicuri pe tastatură și mouse în fiecare zi, ușurați-vă ochii și mâinile obosite.
  • Deveniți expert Excel în 3 minute. Nu mai este nevoie să vă amintiți formule dureroase și coduri VBA.
  • Încercare gratuită nelimitată de 30 de zile. Garanție de restituire a banilor de 60 de zile. Upgrade gratuit și asistență timp de 2 ani.
Panglică Excel (cu Kutools pentru Excel instalat)

Fila Office - Activați lectura și editarea cu file în Microsoft Office (includeți Excel)

  • O secundă pentru a comuta între zeci de documente deschise!
  • Reduceți sute de clicuri de mouse pentru dvs. în fiecare zi, spuneți adio de la mâna mouse-ului.
  • Vă crește productivitatea cu 50% atunci când vizualizați și editați mai multe documente.
  • Aduce file eficiente în Office (include Excel), la fel ca Chrome, Firefox și noul Internet Explorer.
Captură de ecran a Excel (cu fila Office instalată)
Comentarii (4)
Încă nu există evaluări. Fii primul care evaluează!
Acest comentariu a fost redus la minimum de moderatorul de pe site
Multumesc pentru asta. Frumoasă formulă. Cum l-aș modifica astfel încât, dacă celula conține doar litere, formula să intre cu 0 în celula rezultatelor (mai degrabă decât goală, așa cum este în acest moment)? M-am gândit că aș putea să o fac prin împachetarea formulei în încă o declarație IF, dar nu ajung prea departe.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună ziua, Glenn, Pentru a afișa rezultatele ca spații libere și nu ca zero, vă rugăm să aplicați următoarea formulă:=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),"")

Vă rugăm să încercați, sper că vă poate ajuta!
Acest comentariu a fost redus la minimum de moderatorul de pe site
Va dura ceva de digerat 😋 Mulțumesc pentru timpul acordat pentru a răspunde 👍
Acest comentariu a fost redus la minimum de moderatorul de pe site
Care este această formulă pentru setările franceze?
Nu există comentarii postate aici încă
Lăsa comentarii
Postare ca invitat
×
Evaluează această postare:
0   Caractere
Locații sugerate