Funkcia pre výber čísiel z reťazca

Funkcia, ktorá ponechá z textového reťazca len čísla sa v Exceli nenachádza. Pomerne často sa ale stretávam buď na školeniach Excel alebo aj na rôznych fórach s tým, že ju ľudia potrebujú pre úspešné zvládnutie úloh v Exceli. Budeme takúto funkciu teda musieť naprogramovať. V tomto článku ale nebude vysvetľované, ako takú funkciu naprogramovať, ale ako ju „dostať“ do Excelu a použiť.

Tento príklad vznikol na školení Excel, kde mali v jednej firme problém s objednávkami, ktoré boli rôzne označované.

Objednavky

Aby mohli s objednávkami ďalej pracovať (napríklad používať funkciu VLOOKUP a podobne), bolo nutné, aby z objednávky ostal len reťazec čísiel. Hoci sa v Excel nachádza niekoľko stoviek funkcií, tak taká, ktorá by ponechala z reťazca len čísla tam nie je.

Poďme na to 🙂

  1. Otvoríme editor jazyka Visual Basic for Applications – to spravíme pomocou ALT+F11
  2. Dáme príkaz Insert, Module
    Insert Module
  3. Do modulu, ktorý sme vložili, dáme nasledovný kód:Public Function NechajCisla(StareCislo) As String
    Application.Volatile
    NechajCisla = ""
    For i = 1 To Len(StareCislo)
    Vyrezane = Mid(StareCislo, i, 1)
    If IsNumeric(Vyrezane) Then
    NechajCisla = NechajCisla & Vyrezane
    Else
    End If
    Next i
    End Function
    Funkcia v module
  4. Editor jazyka Visual Basic for Applications môžeme zavrieť

No a môžeme funkciu začať používať. Tak ako každú ďalšiu funkciu v Exceli.Ak používate príkaz Vložiť funkciu, tak ju nájdete v kategórii Definované používateľom.

Vloženie funkcie

Výsledok vidíte na nasledovnom obrázku.

Výsledok

Poznámka: Pokiaľ by ste chceli používať túto funkciu opakovane, tak je vhodné uložiť ju do modulu v zošite personal.xlsb alebo ju uložiť ako doplnok programu Excel a doplniť do Excelu.

Návrat hore