Tukaj boste našli nekaj relativno preprostih funkcij delovnega lista Excel VBA po meri, ki so tudi zelo uporabne. Te funkcije se imenujejo funkcije ovoja, ker so sestavljene iz kode, ki je ovita okoli notranjih elementov VBA. Z drugimi besedami, omogočajo vam uporabo funkcij VBA v formulah delovnega lista.
Funkcija uporabnik()
' Vrne ime trenutnega uporabnika
Uporabnik = Application.UserName
Končna funkcija
Ta funkcija v bistvu omogoča vašim formulam dostop do lastnosti UserName predmeta Application.
Funkcija NumberFormat
Ta funkcija preprosto prikaže obliko številk za celico. To je lahko koristno, če morate zagotoviti, da ima skupina celic enako obliko številk.
Funkcija NumberFormat (celica)
' Vrne obliko zapisa številk celice
Oblika števila = Cell(1).Oblika številk
Končna funkcija
Ste opazili uporabo celice (1)? Če je kot argument uporabljen obseg več celic, se uporablja samo prva celica.
Podobne funkcije lahko preprosto napišete, ki vrnejo barvo besedila celice, barvo ozadja, pisavo itd.
Funkcija ExtractElement
Ta funkcija ovoja vrne podniz iz besedilnega niza, ki vsebuje več elementov, ločenih z ločilnim znakom. Ta formula na primer vrne kravo, ki je tretji element v nizu, ki uporablja presledek kot ločilo. Argumenti so seveda lahko sklicevanja na celice.
=ExtractElement("pes konj krava mačka", 3, " ")
Tukaj je koda, ki je ovoj za funkcijo Split VBA:
Funkcija ExtractElement(Txt, n, Sep)
' Vrne n-ti element besedilnega niza, kjer je
' elementi so ločeni z določenim ločilnim znakom
ExtractElement = Split(Application.Trim(Txt), Sep)(n - 1)
Končna funkcija
Spodnja slika prikazuje funkcijo ExtractElement, ki se uporablja v formulah delovnega lista. Stolpec A vsebuje besedilni niz, stolpec B vsebuje številko elementa, ki ga je treba ekstrahirati, in stolpec C vsebuje ločilo (celice, ki se zdijo prazne, vsebujejo presledek).
Uporaba funkcije ExtractElement za vrnitev elementa iz niza.
Funkcija SayIt
Ta preprosta funkcija je ovoj za metodo Speak predmeta Application.Speech. Za »izgovarjanje« argumenta uporablja sintetiziran glas.
Funkcija SayIt(txt)
« Izgovori argument
Application.Speech.Speak txt, True
Končna funkcija
Tukaj je primer:
=IF(C10>10000,SayIt("Presežen proračun"),"V redu")
Formula preveri celico C10. Če je vrednost večja od 10.000, funkcija izgovori besedilo: »Prek proračuna«. Če je vrednost manjša od 10.000, funkcija prikaže besedilo OK (in ne pove ničesar).
Uporabljajte zmerno. Če to funkcijo uporabite večkrat, je lahko zelo zmedeno. Ne pozabite tudi, da se ta funkcija ovrednoti vsakič, ko se izračuna delovni list, zato bo glas lahko zelo moteč, če naredite veliko sprememb. Ta funkcija je verjetno bolj primerna za zabavne namene.
Funkcija IsLike
Operater Like VBA je zelo prilagodljiv način za primerjavo besedilnih nizov. Preverite v sistemu pomoči VBA. Ta funkcija prinaša to moč formulam vašega delovnega lista:
Funkcija IsLike (besedilo, vzorec)
' Vrne true, če je prvi argument podoben drugemu
IsLike = vzorec, kot je besedilo
Končna funkcija