Cum elimini toate literele dintr-un sir mixt, litere+cifre, in Excel


Saptamana trecuta am publicat 2 guest post-uri, pe cristianflorea.ro si gadget24.ro. M-am bucurat sa vad ca oamenii au fost deschisi si ca nu mi-au trantit gmail-ul in nas. 🙂 Apropo, sa stiti ca si eu sunt deschis la guest post-uri despre Excel.

Pe cristianflorea.ro am primit urmatoarea intrebare:

Elimina literele dintr-un sir mixt 0

Imi plac provocarile

Sotia mea ma intreba de unde am atatea idei de articole despre Excel, apropo, acesta e articolul cu numarul 124.



Multe din articolele care le-am publicat aici nu sunt de fapt ideile mele ci sunt raspunsuri la intrebari pe care le-am primit fie prin email fie la cursurile de Excel pe care le mai tin.

Gabi, mersi pentru intrebare / provocare, hai sa vedem cum procedam.

Ce vrem sa facem

Intrebarea e destul de clar pusa, ca sa ma asigur ca ai inteles am facut si o imagine.

Elimina literele dintr-un sir mixt 1

Functia magica?

Asa bine ar fi sa existe o functie in Excel care sa faca asta, am incercat eu cateva:

=scoateliterele() = ERROR 

=lasadoarnumerele() = ERROR 

=abracadabra() = ERROR 

Nasol, nu a functionat niciuna. 🙁

Alternativa

Speram ca ultima functie sa mearga, o fi ploaia de vina. Nu ne descurajam, facem un pas in lateral si incercam in felul urmator:

  1. Extragem fiecare caracter in parte folosind functia MID
  2. Verificam daca e litera si il eliminam in acest caz
  3. Lipim la loc caracterele

Simplu, nu?

Download

In acest fisier poti gasi la modul practic cum am procedat. Daca vrei sa iti explic putin, citeste mai departe.

1. Extragem

Ca sa extragem un numit numar de caractere dintr-un string folosim functia MID. In exemplul de mai jos vreau sa extrag primul caracter din cuvantul pe care il introduc (pe care il gasim in celula B3.

=MID($B$3,1,1)

Am repetat aceasta formula de 20 de ori, ca sa extrag 20 de caractere. Asa arata formula pentru caracterul 2.

=MID($B$3,2,1)

2. Verificam

Dupa ce extragem X numar de caractere, in cazul meu am ales sa merg pana la 20, trebuie sa verific daca acel caracter e numar sau litera. Am facut asta folosind o combinatie intre IF, ISNUMBER si NUMBERVALUE, dupa cum poti vedea mai jos:

=IF(ISNUMBER(NUMBERVALUE(MID($B$3,1,1))),MID($B$3,1,1),"")

Nu stiu daca ai observat, dar eu daca depistez o litera aleg sa o elimin.

* in casuta de search din partea dreapta sus poti cauta mai multe informatii despre oricare dintre functiile prezentate aici.

3. Lipim la loc

In ultimul pas lipim caracterele la loc, pentru asta folosim functia CONCATENATE.

=CONCATENATE(C5,C6,C7,C8,C9,C10,C11,C12,C13,C14,C15,C16,C17,C18,C19,C20,C21,C22,C23,C24)

Probabil ca stii ca functia asta lipeste cu aracet continutul din celulele din paranteza.

Cam atat

Gabi, mersi pentru intrebare, sper ca ti-am dat o solutie cat de cat ok. Posibil sa para mai complicat dar nu e cazul, mi-a luat cam 7 minute sa ii dau de cap.

Daca ai si tu o intrebare la care inca nu am raspuns deja pe acest site, te invit sa folosesti zona de comentarii de mai jos.