Hjem Social Media Sådan bruges VBA-regnearkfunktioner i Excel 2016 - dummies

Sådan bruges VBA-regnearkfunktioner i Excel 2016 - dummies

Indholdsfortegnelse:

Video: Basis Excel: Vlookup 2025

Video: Basis Excel: Vlookup 2025
Anonim

Selvom VBA tilbyder et anstændigt udvalg af indbyggede funktioner, finder du måske ikke altid præcis, hvad du har brug for. Heldigvis kan du også bruge de fleste af Excels regnearkfunktioner i dine VBA-procedurer. De eneste regnearkfunktioner, som du ikke kan bruge, er dem, der har en tilsvarende VBA-funktion. Du kan f.eks. Ikke bruge Excel's RAND-funktion (som genererer et tilfældigt tal), fordi VBA har en tilsvarende funktion: Rnd.

VBA gør Excels regnearkfunktioner tilgængelige via WorksheetFunction-objektet, som findes i applikationsobjektet. Her er et eksempel på, hvordan du kan bruge Excels SUM-funktion i en VBA-sætning:

Total = Application. WorksheetFunction. SUM (Område ("A1: A12"))

Du kan udelade enten Programmets del eller WorksheetFunction-delen af ​​udtrykket. I begge tilfælde viser VBA ud, hvad du laver. Med andre ord arbejder disse tre udtryk alle sammen nøjagtigt:

I alt = Ansøgning. WorksheetFunction. SUM (Range ("A1: A12")) I alt = WorksheetFunction. SUM (Range ("A1: A12")) I alt = Ansøgning. SUM (Range ("A1: A12"))

Min personlige præference er at bruge WorksheetFunction-delen kun for at gøre det helt klart, at koden bruger en Excel-funktion.

Eksempler på arbejdsarksfunktioner

Her finder du ud af, hvordan du bruger regnearkfunktioner i dine VBA-udtryk.

Find den maksimale værdi i en rækkevidde

Her er et eksempel, der viser, hvordan man bruger Excel's MAX-regnearkfunktion i en VBA-procedure. Denne procedure viser den maksimale værdi i kolonne A i det aktive regneark:

Brug af et regneark-funktion i din VBA-kode.
Sub ShowMax () Dim TheMax As Double TheMax = WorksheetFunction. MAX (Range ("A: A")) MsgBox TheMax End Sub

Du kan bruge MIN-funktionen til at få den mindste værdi i en rækkevidde. Og som du måske forventer, kan du bruge andre regnearksfunktioner på en lignende måde. Du kan f.eks. Bruge den store funktion til at bestemme k den største værdi i en rækkevidde. Følgende udtryk viser dette:

SecondHighest = WorksheetFunction. STOR (Range ("A: A"), 2)

Bemærk, at den store funktion bruger to argumenter. Det andet argument repræsenterer k den del - 2, i dette tilfælde (den næststørste værdi).

Beregning af realkreditbetaling

I det næste eksempel bruges PMT-regnearkfunktionen til at beregne en realkreditbetaling. Tre variabler bruges til at gemme dataene, der sendes til Pmt-funktionen som argumenter.En meddelelsesboks viser den beregnede betaling.

Sub PmtCalc () Dim IntRate Som Double Dim LoanAmt Som Double Dim Perioder Så Lang IntRate = 0. 0625/12 Perioder = 30 * 12 LoanAmt = 150000 MsgBox WorksheetFunction. PMT (IntRate, Perioder, -LoanAmt) End Sub

Som følgende sætning viser, kan du også indsætte værdierne direkte som funktionsargumenterne:

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

Brug af variabler til at gemme parametrene gør koden lettere at læse og ændre, hvis det er nødvendigt.

Brug af en opslagsfunktion

Følgende eksempel bruger VBAs InputBox- og MsgBox-funktioner samt Excel's VLOOKUP-funktion. Det beder om et varenummer og får derefter prisen fra et opslagstabell. Nedenfor er rækkevidde A1: B13 betegnet PriceList.

Sortimentet, der hedder PriceList, indeholder priser for dele.
Sub GetPrice () Dim PartNum Som Variant Dim Price Som Double PartNum = InputBox ("Enter the Part Number") Sheets ("Priser"). Aktivér pris = Arbejdsarksfunktion. VLOOKUP (PartNum, Range ("PriceList"), 2, False) MsgBox PartNum & "costs" & Price End Sub

Sådan fungerer GetPrice-proceduren:

  • VBAs InputBox-funktion beder brugeren om et varenummer.

  • Delenummeret, som brugeren indtaster, er tildelt til PartNum-variablen.

  • Den næste sætning aktiverer Priser regnearket, bare hvis det ikke allerede er det aktive ark.

  • Koden bruger VLOOKUP-funktionen til at finde partnummeret i tabellen.

  • Bemærk, at de argumenter, du bruger i denne erklæring, er de samme som dem, du vil bruge med funktionen i en regnearkformel. Denne sætning tildeler resultatet af funktionen til prisvariablen.

  • Koden viser prisen for delen via MsgBox-funktionen.

Denne procedure har ingen fejlhåndtering, og det mislykkes mishandlet, hvis du indtaster et ikke-eksisterende partnummer. (Prøv det.) Hvis dette var en faktisk applikation, der bruges i en egentlig virksomhed, vil du gerne tilføje nogle udsagn, der omhandler fejl mere yndefuldt.

Indtastning af regnearkfunktioner

Du kan ikke bruge dialogboksen Excel Paste-funktion til at indsætte en regnearkfunktion i et VBA-modul. I stedet indtaste sådanne funktioner den gammeldags måde: for hånd. Du kan dog kan bruge dialogboksen Indsæt funktion til at identificere den funktion, du vil bruge, og finde ud af om dens argumenter.

Du kan også udnytte VBE's Auto List Members-valgmulighed, som viser en rulleliste over alle regnearkfunktioner. Skriv blot Application. Arbejdsarksfunktion efterfulgt af en periode. Så ser du en liste over de funktioner, du kan bruge. Hvis denne funktion ikke virker, skal du vælge VBE's Funktioner → Indstillinger kommando, klikke på fanen Editor og placere en check ud for Auto List Members.

Få en liste over regnearksfunktioner, som du kan bruge i din VBA-kode.

Mere om brugen af ​​regnearkfunktioner

Nybegyndere til VBA forvirrer ofte VBAs indbyggede funktioner og Excels arbejdsbogsfunktioner. En god regel at huske er, at VBA ikke forsøger at genopfinde hjulet.For det meste duplikerer VBA ikke Excel-regnearkfunktioner.

For de fleste regnearksfunktioner, der ikke er tilgængelige som metoder i WorksheetFunction-objektet, kan du bruge en tilsvarende VBA-indbygget operatør eller funktion. Funktionen MOD-regneark er f.eks. Ikke tilgængelig i WorksheetFunction-objektet, fordi VBA har et tilsvarende: den indbyggede Mod-operatør.

nederste linje? Hvis du skal bruge en funktion, skal du først afgøre, om VBA har noget, der opfylder dine behov. Hvis ikke, skal du tjekke regnearkets funktioner. Hvis alt andet fejler, kan du muligvis skrive en brugerdefineret funktion ved hjælp af VBA.

Sådan bruges VBA-regnearkfunktioner i Excel 2016 - dummies

Valg af editor

Hvordan du opretter email-beskeder til en SharePoint-gruppe - dummier

Hvordan du opretter email-beskeder til en SharePoint-gruppe - dummier

Hvis RSS ikke er dine ting, Du kan vælge at modtage e-mail-underretninger, når SharePoint-apps ændres ved at oprette en advarsel. Advarsler er en fantastisk måde at holde styr på de ændringer, som dine holdkammerater gør i dokumenter og elementer. Du skal bruge tilladelsen Opret advarsler til at oprette varsler. Denne tilladelse ydes som regel med out-of-the-boxen ...

Sådan oprettes eller fjernes tilladelser til et SharePoint Subsite-dummies

Sådan oprettes eller fjernes tilladelser til et SharePoint Subsite-dummies

I teorien kan du indstille sikkerhedskopiering én gang til en SharePoint-samling og tillade alt at arve. I virkeligheden vil du måske ikke have, at alle har samme adgang. For at oprette unikke tilladelser til et websted, en app, en mappe eller en genstand skal du stoppe at arve tilladelser fra forælder. Oprettelse af unikke tilladelser ...

Oprettelse af en standardvisning i din SharePoint 2016 App - dummies

Oprettelse af en standardvisning i din SharePoint 2016 App - dummies

Den mest almindelige form for visning du opretter i en SharePoint-app er en offentlig standardvisning. En offentlig visning kan bruges af alle til at se indholdet af en app. Standardvisninger har følgende egenskaber: De er tilgængelige for alle browsere, herunder Firefox, Chrome og Safari. De har de fleste konfigurationsindstillinger, sådan ...

Valg af editor

Wireframe Planlægning: Byg din infografiske dummies krop

Wireframe Planlægning: Byg din infografiske dummies krop

Efter at du har konstrueret en smart titel og indsigt Introduktion til din infographic, det sjove kan begynde. Med 80-90 procent af det visuelle rum i infografiet, der er afsat til stykkets krop, er det vigtigt at sikre en glat flow af billeder og information. Alle oplysninger, der er inkluderet i infographic, bør tjene til at ...

Wireframe Planlægning: Klargør "Big Idea" af dine infographic-dummies

Wireframe Planlægning: Klargør "Big Idea" af dine infographic-dummies

Når wireframing din infographic, skal du klarlægge din "store ide". "Din infographic vil uden tvivl have en række underemner, sektioner og typer af oplysninger. Men i alle disse forskellige elementer bør der altid være en nugget med information eller en konklusion, der er vigtigere end alt andet. Hvis en læser måtte fortælle ...

Valg af editor

Træner NaturallySpeaking til din stemme ved at læse tekst - dummier

Træner NaturallySpeaking til din stemme ved at læse tekst - dummier

Hvis NaturallySpeaking synes at være flere fejl end det plejede at spørge dig selv, om du har ændret sig siden du først trænede Dragon. Har din stemme, måde at tale, eller arbejdsmiljø ændret? F.eks. Får du mere erfaring med diktering? Har du ændret dit kontor eller ændret noget, der producerer eller absorberer lyd ...

Transkriber med AutoTranscribe Folder Agent i NaturallySpeaking - dummies

Transkriber med AutoTranscribe Folder Agent i NaturallySpeaking - dummies

, Hvis du har en tilbagevendende transkription til input til Dragon Selvfølgelig sparer AutoTranscribe Folder Agent dig tid. Hvis du f.eks. Optager en ugentlig podcast, kan du oprette en bestemt mappe til den. Når du placerer en ny lydfil i den mappe, transcriberes den automatisk. Hvis du vil indstille ...