Excel & VBA Roundup-funksjon

Jobber på den bærbare datamaskinen på en kafé

Bildekreditt: mavoimages/iStock/Getty Images

Å lære hvordan du bruker Excels «Roundup»-funksjon fra det innebygde programmeringsspråket VBA, eller Visual Basic for Applications, hjelper deg med å kjøre en hvilken som helst Excel-funksjon fra VBA. Denne ferdigheten er nyttig fordi Excel har mange funksjoner som VBA ikke har, og som du kanskje må bruke fra et VBA-program. Vær oppmerksom på at VBA-funksjonen som lar deg trykke på "Roundup"-funksjonen ikke vil varsle deg om en feil syntaks eller argument, slik den ville gjort når du bruker standard regnearkgrensesnitt.

Hensikt

Excel "Roundup"-funksjonen runder et tall oppover til antallet sifre du angir. For eksempel, å kjøre "Roundup (2.2, 0)" forteller Excel at du vil at den skal runde tallet 2.2 opp til neste heltall. "0" i det andre argumentet forteller Excel at du ikke vil ha noen sifre etter desimaltegnet, som tilsvarer å si at du vil ha et heltallssvar.

Dagens video

VBA runde funksjon

VBA har ikke en «Roundup»-funksjon innebygd. Den nærmeste funksjonen den har er "Round"-funksjonen, som runder opp eller ned avhengig av om sluttsifferet i tallet du runder av er større enn eller mindre enn 5. For eksempel, å skrive "Round (2.2, 0)" i VBA "Immediate"-vinduet resulterer i en 2, i stedet for de 3 som Excel "Roundup"-funksjonen ville runde opp til.

"Formel" eiendom

Selv om VBA ikke har en egen "Roundup"-funksjon, kan den bruke Excels "Roundup"-funksjon. For å instruere VBA til å gjøre dette, sett "Formula"-egenskapen til det virtuelle objektet "Range" til "Roundup"-funksjonen. Følgende eksempel viser deg hvordan du gjør dette. Åpne VBA-utviklingsmiljøet ved å trykke "Alt" og "F11" samtidig fra Excel. Klikk med musen i "Immediate"-vinduet, og skriv deretter inn følgende setning: "Range ("A1"). Formel = "=Roundup (2.2, 0)"." Gå tilbake til Excel ved å bruke "Alt-F11"-tastetrykket som nettopp er beskrevet. Du vil se resultatet "3" i celle A1, noe som indikerer at setningen din har brukt Excels "Roundup"-funksjon.

Interaktivt eksempel

Du kan lage et interaktivt VBA-program som godtar argumentene for "Roundup"-funksjonen fra en bruker, og viser resultatet av denne funksjonen. Etter å ha åpnet VBA-utviklingsmiljøet, lim inn følgende program i vinduet:

Offentlig Sub roundUpANumber() Dim a1, a2, s a1 = CDbl (InputBox("Skriv inn tallet du vil runde")) a2 = CInt (InputBox("Skriv inn antall desimaler som du vil runde av tallet du nettopp skrev inn.")) s = "=Roundup(" & a1 & "," & a2 & ")" Range("A1").Formel = s Range("A1") .Beregn MsgBox (område("A1"). Verdi) Slutt Under

Kjør programmet ved å klikke på en av setningene, og deretter klikke på "Kjør"-menyens "Kjør"-kommando. Når Excel ber deg om funksjonens argumenter, skriv dem inn og trykk "Enter". Programmet ditt vil vise resultatet av "Roundup"-funksjonen for argumentene du skrev inn.