Stałe w Excel VBA 4


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.

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.

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.

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 email nie zostanie opublikowany.

4 komentarzy do “Stałe w Excel VBA

  • Kuba

    Zadanie 3.1.

    Option Explicit

    Sub constExample_3_1()

    Const dblPi As String = 3.14

    Dim dblRadius As Double

    dblRadius = Range(“B1”)

    Range(“B2”) = dblPi * dblRadius ^ 2

    End Sub

    Zadanie 3.2

    Sub constExample_3_2()

    Const dbPi As Double = 3.14
    Dim dbR As Double

    dbR = InputBox(“Wprowadź promień koła”)

    MsgBox (“Obwód koła wynosi: ” & 2 * dbPi * dbR)

    End Sub

  • Kuba

    Fajny kurs, wszystko jasno wytłumaczone. Przykłady do samodzielnego rozwiązania pozwalają przećwiczyć zdobytą wiedzę.