Găsiți orice cifră - Sfaturi Excel

Excel - cum să păstrați doar cifrele dintr-o celulă, nu literele.

Urmăriți videoclipul

  • Verificați o coloană pentru a vedea dacă există cifre în cod
  • Metoda de facturare 1:
  • Flash Fill
  • Metoda Mike:
  • Utilizați funcția SUBSTITUTE cu o constantă de matrice.
  • Nu va trebui să utilizați Ctrl + Shift + Enter, deoarece este o constantă de matrice
  • Aceasta va elimina câte o cifră odată
  • Utilizați funcția ȘI pentru a vedea dacă fiecare articol din matricea rezultată este egal cu elementul original
  • Metoda de facturare 3:
  • Utilizați o funcție VBA pentru a verifica cifrele

Transcriere video

Bill: Hei. Bine ai revenit. Este timpul pentru un alt Podcast Excelent Dueling. Sunt Bill Jelen din. Mi se va alătura Mike Girvin de la ExcelIsFun. Acesta este episodul nostru 186: da dacă există cifre în celulă. Întrebarea de astăzi este trimisă de Jen, are 13.000 de rânduri de date, trebuie să caute printr-o celulă, dacă vreun caracter este o cifră, marcați-o ca Da, altfel Nu. Bine. Ei bine, Mike, sper că ai un mod minunat de a face acest lucru, pentru că eu nu am.

Voi folosi flash fill și, în flash fill, îi voi oferi doar un model aici cu câteva litere și cifre. Vreau să mă asigur că includ toate numerele posibile doar pentru a înțelege ceea ce fac și 0 așa. Deci, există datele inițiale și apoi voi avea o soluție de completare flash pentru mine și, în versiunea fixă, vom scăpa de toate cifrele. Deci, mă uit și voi vedea dacă există o cifră. Dacă există, scăpați de el așa, apoi apăsați CONTROL + E pentru a umple rapid și ceea ce ar trebui să avem este acum doar literele, doar literele.

Și atunci întrebarea este, s-a schimbat? Deci = DACĂ acesta este = la ceea ce căutăm, atunci asta înseamnă că nu au existat modificări, nu există cifre, atunci spunem Nu, altfel Da, așa, și faceți dublu clic, copiați în jos, bine și atunci orice cu un Nu nu are cifre acolo. Scăpăm de rândul nostru original și, odată ce copiem acest lucru, CONTROL + C, ALT + E, S, V și putem scăpa de umplerea blițului. Bine, Mike. Să vedem ce ai. (= IF (A2 = B2, „Nu”, „Da”))

Mike: Wow ,. Aceasta trebuie să fie cea mai uimitoare utilizare creativă unică a umplerii cu bliț, cred că am văzut vreodată. Ați inventat un text, ați scos numerele reale, CONTROL + E, și a extras instantaneu toate numerele și a livrat un șir de text nou fără cifre, apoi ați făcut IF. Absolut minunat.

Bine. Voi reveni la această foaie chiar aici și voi folosi funcția SUBSTITUTE. Acum, SUBSTITUT, o să-i spun să se uite la acel text chiar acolo, și OLD_TEXT pe care vreau să-l găsesc și să-l elimin, ei bine, sunt toate cifrele. Deci, voi crea o constantă de matrice (1, 2, 3, 4, 5 toate cifrele și). Acum este o constantă de matrice și stă în OLD_TEXT pentru că nu pun un singur element acolo, ci în schimb pun o grămadă de articole. Aceasta este o operație de matrice de argumente funcționale. Există 10 articole diferite aici care vor instrui SUBSTITUTUL să livreze 10 articole separate, corect, și dacă găsește unul dintre aceste articole, ce vreau? „”. Asta va spune funcției să nu pună nimic acolo,). (= SUBSTITUT (A2, (1,2,3,4,5,6,7,8,9,0), „”))

Acum, cursorul meu la sfârșit. Când apăs tasta F9, destul de sigur, deoarece există doar un 0, toate acestea sunt exact egale, cu excepția ultimei. Pentru ultima, SUBSTITUTUL a găsit 0 și nu a pus nimic în locul său. Acum, CONTROL-Z, CONTROL-ENTER și o voi copia chiar aici, F2 și F9. Deci, dacă mergem la 6, există versiunea 5, a eliminat 5 acolo, a eliminat 6 acolo și a eliminat 8 acolo, deci vor exista 1, 2, 3 articole diferite, care sunt diferite. Numai atunci când toate articolele sunt exact egale cu elementul original ne va spune că nu există cifre. EVADARE.

Am să revin în vârf. Se pare că, F2, acesta este un test ȘI logic. ȘI funcție. Vreau să verific dacă fiecare dintre aceste elemente din acel tablou rezultat este = pentru elementul original. Când toate sunt adevărate, atunci îmi va spune că nu există numere în acel inel de text. ), CONTROL + ENTER, primesc un FALS pentru că unul dintre ei intern lipsește acel 0. Voi copia acest lucru aici. Acesta, desigur, va avea un ADEVĂRAT - la fel cu acestea - pentru că toate articolele generate intern, dacă F2 chiar aici, toate acestea, F9, sunt exact egale cu originalul. EVADARE. Acum, ajung la vârf. Apropo, nu a trebuit să folosesc CONTROL + SHIFT + ENTER pentru că atunci când folosești această constantă de matrice în formula matricei, atunci nu trebuie să folosești CONTROL + SHIFT + ENTER. (= ȘI (SUBSTITUT (A2, (1,2,3,4,5,6,7,8,9,0), „”) = A2))

Bine. Voi veni la început. Acesta este testul meu logic. Dacă toate acestea devin adevărate, valoare dacă este adevărată, în „NU”, altfel vă rugăm să dați DA ”). CONTORL + ENTER. Faceți dublu clic pe asta. Va trebui să fac dublu clic pe acesta și să o trimit în jos. Bine. A fost puțin amuzant cu SUBSTITUTUL, o constantă de matrice, un test ȘI logic și IF, dar, vă spun ce, încă nu-mi vine să cred că umplerea blițului, cum l-ați folosit pentru a extrage, în esență, toate numere din asta. În regulă, o să-ți arunc înapoi, MrExcel. (= IF (AND (SUBSTITUTE (A2, (1,2,3,4,5,6,7,8,9,0), „”) = A2), „Nu”, „Da”))

Bill: Ei bine, acea formulă cu SUBSTITUTE și matricea constantă și ȘI, este extraordinar de uimitor. A trebuit să folosesc flash fill pentru că nu aș fi putut să-l dau seama. Asta este genial. Acum, am o a treia cale. Să aruncăm o privire la asta.

Acum, iată modul în care aș rezolva cu adevărat acest lucru, doar un pic de VBA. Deci, fac ALT + F11 pentru a trece la VBA, INSERT, MODULE și apoi tastați acest cod. Vom crea o nouă funcție numită HASNUMBERS și o vom trece la valoarea celulei și vom începe cu cuvântul ALPHA. Ne uităm la fiecare caracter și, dacă acest cod, dacă (codul ASC - 06:35) al acelui caracter este între 48 și 57, atunci spunem că este NUMĂR, FUNCȚIE DE IEȘIRE și continuăm. Așa, așa, arată până găsește o cifră. Când o face, returnează HASNUMBERS. Deci, aici, vom spune = HASNUMBERS, indicați către acea celulă și faceți dublu clic pentru a copia asta. Ori de câte ori vede o cifră acolo, numerele, ALPHA, vor fi ușor de sortat. (= HasNumbers (A2))

În regulă, recapitulare rapidă a episodului. Scop: verificați coloana pentru a vedea dacă există cifre în codul de caractere, codul din celulă. Am folosit flash fill pentru a elimina cifrele, apoi funcția de lungime pentru a vedea dacă s-a schimbat sau nu. Mike avea o formulă strălucitoare, funcția SUBSTITUTE cu o constantă de matrice. Nu aveți nevoie de CONTROL + SHIFT + ENTER. Trebuie să eliminați câte o cifră odată și apoi să utilizați funcția ȘI pentru a vedea toate cele 10 rezultate pentru a vedea dacă fiecare este egal cu elementul original. O modalitate strălucitoare de urmat și apoi, rezervă, folosește o funcție VBA pentru a verifica cifrele.

Ei bine, hei. Vreau să mulțumesc tuturor pentru că am trecut pe aici. Ne vedem data viitoare pentru un alt netcast de la și ExcelIsFun.

Descărcare fișier

Descărcați exemplarul de fișier aici: Duel186.xlsm

Articole interesante...