Stałe w Excel VBA

1. Czym są stałe VBA?

W poprzednim rozdziale szkolenia dowiedziałeś się czym są zmienne występujące w naszym kodzie VBA. Różnica pomiędzy zmiennymi a stałymi VBA jest taka, że wartości przypisane do stałych nie będą się zmieniać w trakcie uruchamiania naszego programu. Jeśli chcemy, by nasz kod był w pełni zgodny z zasadami dobrego programowania i tworzył zwartą, spójną całość, to dla stałych wprowadzanych do kodu powinniśmy wykorzystać osobny typ deklaracji. Stosujemy w tym celu definicję Const. Wartość dla stałej musimy przypisać od razu po jej zadeklarowaniu. Nie będzie możliwości jej zmiany w kolejnych blokach kodu. Poniżej przedstawiam przykład zadeklarowania liczby Pi oraz liczby Eulera jako stałych VBA. Co ważne, typ danych został określony. Nie jest on jednak wymagany przy deklarowaniu stałych VBA.

Sub ConstDef()
Const dubPi As Double = 3.14
Const dubEuler As Double = 2.72

MsgBox (dubPi)
MsgBox (dubEuler)

End Sub
Kurs Excel VBA - stałe VBA
Kurs Excel VBA – stałe VBA

2. Przykład z wykorzystaniem stałych

Stwórzmy krótki program, który po wprowadzeniu promienia koła obliczy nam jego pole. Zastosujmy w tym celu okna InputBox i MsgBox.

Sub ConstExample()

Const dblPi As Double = 3.14
Dim dblRadius As Double
dblRadius = InputBox("Wprowadź promień koła: ")

MsgBox dblPi * dblRadius ^ 2

End Sub

W powyższym przykładzie wprowadziliśmy do kodu VBA liczbę PI przypisując jej stałą wartość 3,14. Liczbę tą możemy także wprowadzić do programu przy pomocy funkcji arkusza Excel. By to zrobić, korzystamy z polecenia Application.WorksheetFunction.NAZWA_FUNKCJI umożliwiającej nam wykorzystanie funkcji arkuszowych. Samo działanie musimy wykonać w tym przypadku z pominięciem stałych.

Sub ConstExample1()

Dim dblPi As Double
Dim dblRadius As Double

dblPi = Application.WorksheetFunction.Pi()
dblRadius = InputBox("Wprowadź promień koła: ")
MsgBox dblPi * dblRadius ^ 2

End Sub

3. Zadania (Rozwiązanie możesz wpisać w komentarzu)

3.1. Wykorzystując polecenie Range lub Cells zmodyfikuj przykład i oblicz pole koła pobierając wartość promienia z komórek arkusza. Sam wynik także powinien pojawić się w arkuszu.

3.2 Wykorzystując stałe stwórz program w oparciu o okna InputBox i MsgBox i oblicz obwód koła o promieniu 10. Dla przypomnienia wzór na obwód Ob. = 2 * Pi * R

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

6 komentarzy “Stałe w Excel VBA”