Funkcja zaokrąglania Excela i VBA

Pracuje na swoim laptopie w kawiarni

Źródło obrazu: mavoimages/iStock/Getty Images

Nauka korzystania z funkcji „Roundup” programu Excel z wbudowanego języka programowania VBA lub Visual Basic for Applications pomaga uruchomić dowolną funkcję programu Excel z VBA. Ta umiejętność jest przydatna, ponieważ program Excel ma wiele funkcji, których nie ma VBA i które może być konieczne z poziomu programu VBA. Zwróć uwagę, że funkcja VBA, która umożliwia dotknięcie funkcji „Zaokrąglanie”, nie ostrzega o nieprawidłowej składni lub argumencie, tak jak w przypadku korzystania ze standardowego interfejsu arkusza roboczego.

Zamiar

Funkcja „Zaokrąglanie” programu Excel zaokrągla liczbę w górę do określonej liczby cyfr. Na przykład uruchomienie „Roundup (2,2, 0)” mówi programowi Excel, że chcesz zaokrąglić liczbę 2,2 do następnej liczby całkowitej. „0” w drugim argumencie mówi programowi Excel, że nie chcesz żadnych cyfr po przecinku, co jest równoznaczne z powiedzeniem, że chcesz otrzymać odpowiedź całkowitą.

Wideo dnia

Okrągła funkcja VBA

VBA nie ma wbudowanej funkcji „Roundup”. Najbliższą funkcją, jaką ma, jest funkcja „Round”, która zaokrągla w górę lub w dół w zależności od tego, czy końcowa cyfra w zaokrąglanej liczbie jest większa lub mniejsza niż 5. Na przykład wpisanie „Zaokrąglaj (2.2, 0)” w oknie „Natychmiastowe” VBA daje w wyniku 2 zamiast 3, do których funkcja „Zaokrąglenie” programu Excel zaokrągliłaby w górę.

Właściwość „Formuła”

Chociaż VBA nie ma własnej funkcji „Roundup”, może korzystać z funkcji „Roundup” programu Excel. Aby poinstruować VBA, aby to zrobił, ustaw właściwość „Formuła” obiektu wirtualnego „Zakres” na funkcję „Zaokrąglanie”. Poniższy przykład pokazuje, jak to zrobić. Otwórz środowisko programistyczne VBA, naciskając jednocześnie klawisze „Alt” i „F11” w programie Excel. Kliknij myszą w oknie „Natychmiastowe”, a następnie wpisz następującą instrukcję: „Zakres („A1”).Formula = „=Zaokrąglanie (2.2, 0)”.” Wróć do programu Excel za pomocą opisanego właśnie naciśnięcia klawisza „Alt-F11”.. W komórce A1 zostanie wyświetlony wynik „3”, wskazujący, że w wyciągu pomyślnie zastosowano funkcję „Zaokrąglanie” programu Excel.

Przykład interaktywny

Możesz stworzyć interaktywny program VBA, który przyjmie od użytkownika argumenty funkcji „Zaokrąglanie” i wyświetli wynik tej funkcji. Po otwarciu środowiska programistycznego VBA wklej do okna następujący program:

Public Sub roundUpANumber() Dim a1, a2, s a1 = CDbl (InputBox("Wprowadź liczbę, którą chcesz zaokrąglić")) a2 = CInt (InputBox("Wprowadź liczbę miejsc dziesiętnych, do których chcesz zaokrąglić wprowadzoną liczbę.")) s = "=Roundup(" & a1 & "," & a2 & ")" Range("A1").Formula = s Range("A1") .Calculate MsgBox (Range("A1").Value) End Pod

Uruchom program, klikając jedną z jego instrukcji, a następnie klikając polecenie „Uruchom” w menu „Uruchom”. Gdy program Excel wyświetli monit o argumenty funkcji, wpisz je i naciśnij „Enter”. Twój program wyświetli wynik funkcji „Zaokrąglanie” dla wprowadzonych argumentów.