Uporabite funkcije delovnega lista v primerih makra - kode VBA

V VBA obstaja veliko načinov uporabe funkcij. VBA je opremljen s številnimi vgrajenimi funkcijami. Ustvarite lahko celo lastne funkcije (UDF). Vendar pa lahko z uporabo Application.WorksheetFunction uporabite tudi številne Excelove funkcije v VBA.

Kako uporabljati funkcije delovnega lista v VBA

Za dostop do funkcije Excel v VBA dodajte funkcijo Application.WorksheetFunction pred funkcijo, ki jo želite poklicati. V spodnjem primeru bomo poklicali Excelovo funkcijo Max:

12 Maksimalno vrednost zatemnite tako dolgomaxvalue = Application.WorksheetFunction.Max (Razpon ("a1"). Vrednost, obseg ("a2"). Vrednost)

Sintaksa funkcij je enaka, vendar boste vnesli argumente funkcije tako kot katero koli drugo funkcijo VBA.

Upoštevajte, da se sintaksa funkcije Max prikaže pri tipkanju (podobno kot pri funkcijah VBA):

Metoda delovanja delovnega lista

WorksheetFunction je metoda predmeta aplikacije. Omogoča vam dostop do številnih (ne vseh) standardnih funkcij delovnega lista Excel. Na splošno ne boste imeli dostopa do nobene funkcije delovnega lista, ki ima ustrezno različico VBA.

Spodaj si lahko ogledate seznam številnih najpogostejših funkcij delovnega lista.

Funkcija delovnega lista proti aplikaciji

Do teh funkcij lahko dostopate na dva načina:

Application.WunksheetFunction (kot je prikazano zgoraj):

1 maxvalue = Application.WorksheetFunction.Max (Razpon ("a1"). Vrednost, obseg ("a2"). Vrednost)

ali pa lahko izpustite funkcijo delovnega lista

1 maxvalue = Application.Max (Razpon ("a1"). Vrednost, obseg ("a2"). Vrednost)

Na žalost bo izpustitev funkcije delovnega lista odpravila Intellisense, ki prikazuje skladnjo (glej sliko zgoraj). Vendar ima eno veliko potencialno prednost: Obravnavanje napak.

Če uporabljate aplikacijo in vaša funkcija ustvari napako, bo vrnila vrednost napake. Če uporabite metodo WorksheetFunction, bo VBA vrgel napako v času izvajanja. Seveda lahko odpravite napako VBA, vendar je običajno bolje, da se napaki najprej izognete.

Oglejmo si primer, da vidimo razliko:

Obdelava napak v delovnem listu Vlookup

Poskušali bomo izvesti Vlookup, ki se ne bo ujemal. Tako bo funkcija Vlookup vrnila napako.

Najprej bomo uporabili metodo WorksheetFunction. Upoštevajte, kako VBA prikaže napako:

Nato izpustimo funkcijo delovnega lista. Upoštevajte, kako

Nato bomo izpustili funkcijo delovnega lista. Upoštevajte, kako ni napake, namesto tega funkcija "vrednost" vsebuje vrednost napake iz Vlookupa.

Seznam funkcij delovnega lista VBA

Spodaj boste našli seznam najpogostejših funkcij delovnega lista VBA.

FunkcijaOpis
Logično
INPreveri, ali so izpolnjeni vsi pogoji. PRAVILNO NAPAČNO
ČEČe je pogoj izpolnjen, naredite nekaj, če ne, naredite nekaj drugega.
NAPAKAČe je rezultat napaka, naredite nekaj drugega.
ALIPreveri, ali so izpolnjeni kateri koli pogoji. PRAVILNO NAPAČNO
Iskanje in sklicevanje
IZBERIIzbere vrednost s seznama glede na številko položaja.
HLOOKUPPoiščite vrednost v prvi vrstici in vrnite vrednost.
KAZALOVrne vrednost glede na številke stolpcev in vrstic.
POGLEJ GORPoišče vrednosti vodoravno ali navpično.
UJEMAIšče vrednost na seznamu in vrne njen položaj.
PREVOZObrne usmeritev vrste celic.
VLOOKUPPoiščite vrednost v prvem stolpcu in vrnite vrednost.
Datum čas
DATEVrne datum iz leta, meseca in dneva.
DATEVALUEPretvori datum, shranjen kot besedilo, v veljaven datum
DANVrne dan kot številko (1-31).
360 DNIVrne dneve med 2 datumoma v 360 -dnevnem letu.
UREDIVrne datum, n mesecev stran od začetnega datuma.
EOMONTHVrne zadnji dan v mesecu, n mesecev stran.
URAVrne uro kot številko (0-23).
MINUTAVrne minuto kot številko (0-59).
MESECVrne mesec kot številko (1-12).
NETWORKDAYSŠtevilo delovnih dni med dvema datumoma.
NETWORKDAYS.INTLDelovni dnevi med dvema datumoma, vikendi po meri.
ZDAJVrne trenutni datum in čas.
DRUGIVrne drugo kot številko (0-59)
ČASVrne čas od ure, minute in sekunde.
ČASČas, shranjen kot besedilo, pretvori v veljaven čas.
TEDENVrne dan v tednu kot številko (1-7).
WEEKNUMVrne številko tedna v enem letu (1-52).
DELOVNI DANDatum n delovnih dni od datuma.
LETOVrne leto.
LETOFRACVrne del leta med 2 datumoma.
Inženiring
PRETVORBAPretvorite število iz ene enote v drugo.
Finančni
FVIzračuna prihodnjo vrednost.
PVIzračuna sedanjo vrednost.
NPERIzračuna skupno število plačilnih obdobij.
PMTIzračuna znesek plačila.
OCENITIIzračuna obrestno mero.
NPVIzračuna neto sedanjo vrednost.
IRRNotranja stopnja donosa za niz periodičnih CF.
XIRRNotranja stopnja donosa za niz neperiodičnih CF.
CENAIzračuna ceno obveznice.
INTRATEObrestna mera v celoti vloženega vrednostnega papirja.
Informacije
ISERRPreverite, ali je vrednost celice napaka, prezre #N/A. PRAVILNO NAPAČNO
NAPAKAPreverite, ali je vrednost celice napaka. PRAVILNO NAPAČNO
NEEVENPreverite, ali je vrednost celice izenačena. PRAVILNO NAPAČNO
ISLOŠKOPreverite, ali je celica logična (TRUE ali FALSE). PRAVILNO NAPAČNO
ISNAPreverite, če je vrednost celice #N/A. PRAVILNO NAPAČNO
ISNONTEXTPreverite, ali celica ni besedilo (prazne celice niso besedilo). PRAVILNO NAPAČNO
ISNUMBERPreverite, ali je celica številka. PRAVILNO NAPAČNO
ISODDPreverite, ali je vrednost celice liha. PRAVILNO NAPAČNO
ISTEXTPreverite, ali je celica besedilo. PRAVILNO NAPAČNO
TIPVrne vrsto vrednosti v celici.
Matematika
ABSIzračuna absolutno vrednost števila.
AGREGATDoločite in izvedite izračune za bazo podatkov ali seznam.
STROPZaokroži število navzgor do najbližjega določenega večkratnika.
COSVrne kosinus kota.
STEPENIPretvori radiane v stopinje.
DSUMZapisi zbirke vsot, ki izpolnjujejo določena merila.
SplohZaokroži na najbližje celo število.
EXPIzračuna eksponentno vrednost za dano število.
DEJSTVOVrne faktorije.
NADSTROPJEZaokroži število navzdol do najbližjega določenega večkratnika.
GCDVrne največji skupni delitelj.
INTZaokroži število na najbližje celo število.
LCMVrne najmanjši skupni večkratnik.
LNVrne naravni logaritem števila.
LOGVrne logaritem števila na podano osnovo.
LOG10Vrne logaritem osnove-10 števila.
MROUNDZaokroži število na določen večkratnik.
ČUDENZaokroži na najbližje liho celo število.
PIVrednost PI.
MOČIzračuna število, povišano na stopnjo.
IZDELEKPomnoži niz številk.
QUOTIENTVrne celoštevilčni rezultat deljenja.
RADIANSPretvori kot v radiane.
RANDBETWEENIzračuna naključno število med dvema številkama.
ROUNDZaokroži številko na določeno število števk.
ROUNDDOWNZaokroži število navzdol (proti ničli).
ZAOKROŽI NAVZGORZaokroži število navzgor (stran od nič).
SINVrne sinus kota.
SUBTOTALVrne povzetek statistike za vrsto podatkov.
SUMSešteje številke.
SUMIFŠtevilke vsote, ki izpolnjujejo merila.
SUMIFSŠtevilke vsot, ki izpolnjujejo več meril.
PODROČJEPomnoži matrike števil in sešteje nastalo matriko.
TANVrne tangento kota.
Statistika
POVPREČNOPovprečne številke.
POVPREČNOPovprečne številke, ki izpolnjujejo merila.
POVPREČNOPovprečne številke, ki izpolnjujejo več meril.
CORRELIzračuna korelacijo dveh serij.
COUNTŠteje celice, ki vsebujejo številko.
COUNTAPreštejte celice, ki niso prazne.
COUNTBLANKŠteje prazne celice.
COUNTIFŠteje celice, ki izpolnjujejo merila.
COUNTIFSŠteje celice, ki izpolnjujejo več meril.
NAPOVEDPredvidevajte prihodnje vrednosti y iz linearne linije trenda.
FREKVENCIJAŠteje vrednosti, ki spadajo v določena območja.
RASTIzračuna vrednosti Y na podlagi eksponentne rasti.
PREKREZIIzračuna prestrezanje Y za linijo, ki se najbolje prilega.
VELIKOVrne kth največjo vrednost.
LINESTVrne statistične podatke o liniji trenda.
MAXVrne največje število.
SREDNJIVrne srednjo številko.
MINVrne najmanjše število.
NAČINVrne najpogostejšo številko.
PERCENTILNOVrne k -ti percentil.
PERCENTILE.INCVrne k -ti percentil. Kjer je vključujoče.
PERCENTILE.EXCVrne k -ti percentil. Kje je izključno.
KVARTILNIVrne podano vrednost kvartila.
QUARTILE.INCVrne podano vrednost kvartila. Vključno.
QUARTILE.EXCVrne podano vrednost kvartila. Ekskluzivno.
RANGUvrstitev števila v nizu.
RANK.AVGUvrstitev števila v nizu. Povprečje.
RANK.EQUvrstitev števila v nizu. Najvišja uvrstitev.
NAKLONIzračuna naklon iz linearne regresije.
MALOVrne kth najmanjšo vrednost.
STDEVIzračuna standardni odklon.
STDEV.PIzračuna SD celotne populacije.
STDEV.SIzračuna SD vzorca.
STDEVPIzračuna SD celotne populacije
TRENDIzračuna vrednosti Y na podlagi linije trenda.
Besedilo
ČISTOOdstrani vse znake, ki jih ni mogoče natisniti.
DOLLARPretvori številko v besedilo v obliki valute.
NAJTIPoišče položaj besedila v celici.
LEVOOdreže besedilo več znakov z leve.
LENŠteje število znakov v besedilu.
MIDIzvleče besedilo iz sredine celice.
PRAVILNOBesedilo pretvori v velike in male črke.
ZAMENJATIZamenja besedilo glede na njegovo lokacijo.
REPTBesedilo ponovi večkrat.
PRAVOdreže besedilo več znakov z desne.
ISKANJEPoišče položaj besedila v celici. Ne razlikuje med velikimi in malimi črkami.
ZAMENJAPoišče in nadomesti besedilo. Velike in male črke
BESEDILOPretvori vrednost v besedilo z določeno obliko števila.
TRIMOdstrani vse dodatne presledke iz besedila.
wave wave wave wave wave