Szukaj…


Wprowadzenie

Funkcja to seria instrukcji zawartych w instrukcjach „Funkcja” i „Funkcja końcowa”.

Funkcja wykonuje czynność i zwraca kontrolę dzwoniącemu. Gdy zwraca kontrolę, zwraca również wartość do kodu wywołującego.

Możesz zdefiniować funkcję w klasie, strukturze i module. Domyślnie jest publiczny. Oznacza to, że możesz go wywołać z dowolnego miejsca w aplikacji, które ma dostęp do klasy, struktury lub modułu, w którym go zdefiniowałeś.

Składnia

  • [Modyfikatory] Funkcja Nazwa_Of_Funkcja [(Arg_List)] Jako typ_powrotu
  • [Sprawozdania]
  • Funkcja zakończenia

Uwagi

  • Dwa modyfikatory funkcji zastosowane w tym przykładzie są publiczne i prywatne. Te modyfikatory określają zakres funkcji.
  • Funkcje o zakresie prywatnym można wywoływać tylko z pliku źródłowego, z którego zostały zdefiniowane. W naszym przypadku można go wywołać w module. I nie można go wywoływać poza modułem.
  • Funkcje o zasięgu publicznym można wywoływać zarówno na zewnątrz, jak i wewnątrz modułu. Po prostu możemy powiedzieć: „Możemy to nazwać w dowolnym miejscu w programie”.
  • Domyślny modyfikator funkcji jest Publiczny.
  • Domyślnie argumenty funkcji są przekazywane przez odwołanie (w osobnym temacie zostanie to wyjaśnione szczegółowo).

Tworzenie i wywoływanie funkcji

Ten przykład z wykorzystaniem standardowego projektu EXE z dodatkiem pliku modułu.

  • Utwórz nowy projekt „Standard EXE”. Więc tutaj Formularz zostanie domyślnie dodany do Projektu.
  • Dodaj plik modułu do projektu
  • Umieść przycisk polecenia na formularzu
  • Utwórz przycisk polecenia Kliknij Zdarzenie.

Kod modułu

Utworzono dwie funkcje w module. Jednym z nich jest funkcja publiczna (FnAdd). Wymaga dwóch argumentów liczb całkowitych val_1 i val_2. Zwraca liczbę całkowitą. Ta funkcja dodaje dwa argumenty i zwraca wartość wywołującemu. Przed dodaniem dwa argumenty przechodzą proces w innej funkcji. Która jest funkcją prywatną. Charakterystyka / zasady funkcji publicznej i prywatnej wyjaśnione w części „Uwagi”.

Public Function FnAdd(val_1 As Integer, val_2 As Integer) As Integer

'Calling private function
val_1 = FnMultiplyBy5(val_1)

'Calling private function
val_2 = FnMultiplyBy5(val_2)

'Function return statement
FnAdd = val_1 + val_2

End Function

Poniżej znajduje się funkcja prywatna w module. Wymaga jednego argumentu liczb całkowitych val. Zwraca liczbę całkowitą. Ta funkcja zwielokrotnia wartość 5 przez argument i zwraca wynik wywołującemu.

Private Function FnMultiplyBy5(Val As Integer) As Integer

'Function return statement
FnMultiplyBy5 = Val * 5

End Function

Kod formularza

W przycisku polecenia kliknij Zdarzenie. Tutaj nazywamy funkcję modułu publicznego „FnAdd”

Private Sub Command1_Click()
Debug.Print FnAdd(3, 7)
End Sub

Wynik w oknie natychmiastowym

50


Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow