Kako uporabljati funkcije delovnega lista VBA v Excelu 2016

Čeprav VBA ponuja dostojen nabor vgrajenih funkcij, morda ne boste vedno našli točno tistega, kar potrebujete. Na srečo lahko večino funkcij Excelovega delovnega lista uporabite tudi v svojih postopkih VBA. Edine funkcije delovnega lista, ki jih ne morete uporabiti, so tiste, ki imajo enakovredno funkcijo VBA. Na primer, ne morete uporabiti Excelove funkcije RAND (ki generira naključno število), ker ima VBA enakovredno funkcijo: Rnd.

VBA omogoča Excelove funkcije delovnega lista na voljo prek predmeta WorksheetFunction, ki je vsebovan v objektu Application. Tukaj je primer, kako lahko uporabite Excelovo funkcijo SUM v stavku VBA:

Skupaj = Application.WorksheetFunction.SUM(Obseg(“A1:A12”))

Del izraza lahko izpustite bodisi del aplikacije bodisi del funkcije delovnega lista. V obeh primerih VBA ugotovi, kaj počnete. Z drugimi besedami, vsi ti trije izrazi delujejo popolnoma enako:

Skupaj = Application.WorksheetFunction.SUM(Obseg(“A1:A12”))
Skupaj = Funkcija delovnega lista.SUM(Obseg(“A1:A12”))
Skupaj = aplikacija.SUM(obseg(“A1:A12”))

Moja osebna želja je, da uporabim del WorksheetFunction samo zato, da je popolnoma jasno, da koda uporablja funkcijo Excel.

Primeri funkcij delovnega lista

Tukaj odkrijete, kako uporabljati funkcije delovnega lista v izrazih VBA.

Iskanje največje vrednosti v območju

Tukaj je primer, ki prikazuje, kako uporabiti Excelovo funkcijo delovnega lista MAX v postopku VBA. Ta postopek prikaže največjo vrednost v stolpcu A aktivnega delovnega lista:

Kako uporabljati funkcije delovnega lista VBA v Excelu 2016

Uporaba funkcije delovnega lista v vaši kodi VBA.

Sub ShowMax()
  Zatemni TheMax kot dvojno
  TheMax = WorksheetFunction.MAX(Razpon(“A:A”))
  MsgBox TheMax
Končni sub

S funkcijo MIN lahko dobite najmanjšo vrednost v obsegu. In kot bi lahko pričakovali, lahko na podoben način uporabite druge funkcije delovnega lista. S funkcijo LARGE lahko na primer določite k -to največjo vrednost v obsegu. Naslednji izraz to dokazuje:

SecondHighest = WorksheetFunction.LARGE(Razpon(“A:A”),2)

Upoštevajte, da funkcija LARGE uporablja dva argumenta. Drugi argument predstavlja k- ti del — 2, v tem primeru (druga največja vrednost).

Izračun hipotekarnega plačila

Naslednji primer uporablja funkcijo delovnega lista PMT za izračun hipotekarnega plačila. Za shranjevanje podatkov, ki so posredovani funkciji Pmt kot argumenti, se uporabljajo tri spremenljivke. V oknu s sporočilom se prikaže izračunano plačilo.

Sub PmtCalc()
  Dim IntRate As Double
  Dim LoanAmt kot dvojno
  Tako dolga zatemnjena obdobja
  IntRate = 0,0625 / 12
  Obdobja = 30 * 12
  Znesek posojila = 150000
  MsgBox WorksheetFunction.PMT(IntRate, Periods, -LoanAmt)
Končni sub

Kot kaže naslednja izjava, lahko vrednosti vstavite tudi neposredno kot argumente funkcije:

MsgBox WorksheetFunction.PMT(0,0625 /12, 360, -150000)

Vendar pa uporaba spremenljivk za shranjevanje parametrov olajša branje in po potrebi spreminjanje kode.

Uporaba funkcije iskanja

Naslednji primer uporablja funkcije VBA InputBox in MsgBox ter Excelovo funkcijo VLOOKUP. Zahteva številko dela, nato pa dobi ceno iz iskalne tabele. Spodaj je razpon A1:B13 poimenovan Cenik.

Kako uporabljati funkcije delovnega lista VBA v Excelu 2016

Razpon, imenovan Cenik, vsebuje cene delov.

Sub GetPrice()
  Dim PartNum kot različica
  Dim Price As Double
  PartNum = InputBox (»vnesite številko dela«)
  Listi (“Cene”). Aktivirajte
  Cena = WorksheetFunction.VLOOKUP(PartNum, Range(“PriceList”), 2, False)
  MsgBox PartNum & "stroški" & Cena
Končni sub

Postopek GetPrice deluje tako:

  • Funkcija VBA InputBox od uporabnika zahteva številko dela.

  • Številka dela, ki jo vnese uporabnik, je dodeljena spremenljivki PartNum.

  • Naslednji stavek aktivira delovni list Cene, samo v primeru, da še ni aktiven list.

  • Koda uporablja funkcijo VLOOKUP za iskanje številke dela v tabeli.

  • Upoštevajte, da so argumenti, ki jih uporabljate v tem stavku, enaki tistim, ki bi jih uporabili s funkcijo v formuli delovnega lista. Ta stavek dodeli rezultat funkcije spremenljivki Price.

  • Koda prikaže ceno za del prek funkcije MsgBox.

Ta postopek nima nikakršnega ravnanja z napakami in ne uspe, če vnesete neobstoječo številko dela. (Poskusite.) Če bi bila to dejanska aplikacija, ki se uporablja v dejanskem poslu, bi želeli dodati nekaj stavkov, ki bolj elegantno obravnavajo napake.

Vnos funkcij delovnega lista

Za vstavljanje funkcije delovnega lista v modul VBA ne morete uporabiti pogovornega okna Funkcija lepljenja Excel. Namesto tega vnesite takšne funkcije na staromoden način: ročno. Vendar pa lahko uporabite pogovorno Funkcija okno Prilepi opredeliti funkcijo, ki jo želite uporabiti, in izvedeti o svojih argumentov.

Izkoristite lahko tudi možnost samodejnega seznama članov VBE, ki prikaže spustni seznam vseh funkcij delovnega lista. Samo vnesite Application.WorksheetFunction , ki ji sledi pika. Nato vidite seznam funkcij, ki jih lahko uporabljate. Če ta funkcija ne deluje, izberite ukaz VBE Orodja → Možnosti, kliknite zavihek Urejevalnik in potrdite polje Samodejni člani seznama.

Kako uporabljati funkcije delovnega lista VBA v Excelu 2016

Pridobivanje seznama funkcij delovnega lista, ki jih lahko uporabite v kodi VBA.

Več o uporabi funkcij delovnega lista

Novinci v VBA pogosto zamenjujejo vgrajene funkcije VBA in funkcije delovnega zvezka Excel. Dobro pravilo, ki si ga morate zapomniti, je, da VBA ne poskuša na novo izumiti kolesa. VBA večinoma ne podvaja funkcij Excelovega delovnega lista.

Za večino funkcij delovnega lista, ki niso na voljo kot metode predmeta WorksheetFunction, lahko uporabite enakovredni vgrajeni operator ali funkcijo VBA. Funkcija delovnega lista MOD na primer ni na voljo v objektu WorksheetFunction, ker ima VBA enakovreden: njegov vgrajeni operater Mod.

Spodnja črta? Če želite uporabiti funkcijo, najprej ugotovite, ali ima VBA nekaj, kar ustreza vašim potrebam. Če ne, si oglejte funkcije delovnega lista. Če vse drugo ne uspe, boste morda lahko napisali funkcijo po meri z uporabo VBA.


Kako preprečiti, da Microsoft Word odpira datoteke v načinu samo za branje v sistemu Windows

Kako preprečiti, da Microsoft Word odpira datoteke v načinu samo za branje v sistemu Windows

Kako preprečiti, da Microsoft Word odpira datoteke v načinu samo za branje v sistemu Windows Microsoft Word odpira datoteke v načinu samo za branje, zaradi česar jih je nemogoče urejati? Ne skrbite, metode so spodaj

Kako popraviti nepravilno tiskanje dokumentov Microsoft Word

Kako popraviti nepravilno tiskanje dokumentov Microsoft Word

Kako odpraviti napake pri tiskanju nepravilnih dokumentov Microsoft Word Napake pri tiskanju dokumentov Word s spremenjeno pisavo, neurejenimi odstavki, manjkajočim besedilom ali izgubljeno vsebino so precej pogoste. Vendar pa ne

Izbrišite risbe s peresom in označevalnikom na diapozitivih PowerPoint

Izbrišite risbe s peresom in označevalnikom na diapozitivih PowerPoint

Če ste med predstavitvijo uporabili pero ali označevalnik za risanje po diapozitivih PowerPoint, lahko risbe shranite za naslednjo predstavitev ali jih izbrišete, tako da boste naslednjič, ko ga pokažete, začeli s čistimi PowerPointovimi diapozitivi. Sledite tem navodilom za brisanje risb s peresom in označevalnikom: Brisanje črt ena na […]

Vsebina knjižnice slogov v SharePointu 2010

Vsebina knjižnice slogov v SharePointu 2010

Knjižnica slogov vsebuje datoteke CSS, datoteke Extensible Stylesheet Language (XSL) in slike, ki jih uporabljajo vnaprej določene glavne strani, postavitve strani in kontrolniki v SharePointu 2010. Če želite poiskati datoteke CSS v knjižnici slogov na založniškem mestu: Izberite Dejanja mesta→ Pogled Vsa vsebina spletnega mesta. Prikaže se vsebina spletnega mesta. Knjižnica Style se nahaja v […]

Oblikujte številke v tisoče in milijone v poročilih Excel

Oblikujte številke v tisoče in milijone v poročilih Excel

Ne preobremenjujte občinstva z ogromnimi številkami. V Microsoft Excelu lahko izboljšate berljivost svojih nadzornih plošč in poročil tako, da oblikujete svoje številke tako, da se prikažejo v tisočih ali milijonih.

Kako deliti in spremljati SharePointova spletna mesta

Kako deliti in spremljati SharePointova spletna mesta

Naučite se uporabljati SharePointova orodja za socialno mreženje, ki posameznikom in skupinam omogočajo komunikacijo, sodelovanje, skupno rabo in povezovanje.

Kako pretvoriti datume v julijanske oblike v Excelu

Kako pretvoriti datume v julijanske oblike v Excelu

Julijanski datumi se v proizvodnih okoljih pogosto uporabljajo kot časovni žig in hitra referenca za številko serije. Ta vrsta datumskega kodiranja omogoča trgovcem na drobno, potrošnikom in servisnim agentom, da ugotovijo, kdaj je bil izdelek izdelan in s tem starost izdelka. Julijanski datumi se uporabljajo tudi v programiranju, vojski in astronomiji. Drugačen […]

Kako ustvariti spletno aplikacijo Access

Kako ustvariti spletno aplikacijo Access

Spletno aplikacijo lahko ustvarite v Accessu 2016. Kaj je torej spletna aplikacija? No, splet pomeni, da je na spletu, aplikacija pa je le okrajšava za »aplikacijo«. Spletna aplikacija po meri je spletna aplikacija baze podatkov, do katere dostopate iz oblaka z uporabo brskalnika. Spletno aplikacijo gradite in vzdržujete v namizni različici […]

Vrstica za hitri zagon v SharePointu 2010

Vrstica za hitri zagon v SharePointu 2010

Večina strani v SharePointu 2010 prikaže seznam navigacijskih povezav v vrstici za hitri zagon na levi strani strani. Vrstica za hitri zagon prikazuje povezave do predstavljene vsebine spletnega mesta, kot so seznami, knjižnice, spletna mesta in strani za objavljanje. Vrstica za hitri zagon vključuje dve zelo pomembni povezavi: Povezava do vse vsebine spletnega mesta: […]

Kaj pomenijo sporočila o napakah reševalca v Excelu?

Kaj pomenijo sporočila o napakah reševalca v Excelu?

Pri preprostih težavah reševalec v Excelu običajno hitro najde optimalne vrednosti spremenljivke reševalca za ciljno funkcijo. Toda v nekaterih primerih ima Solver težave pri iskanju vrednosti spremenljivke Solver, ki optimizirajo ciljno funkcijo. V teh primerih Solver običajno prikaže sporočilo ali sporočilo o napaki, ki opisuje ali razpravlja o težavi, ki […]