.
Private Function Dziel (x As Double, y As Double) As Double
If y = 0 then
Dziel = 0
Exit Function
End if
Dziel = x/y
End Function
Private Function Dziel (x As Double, y As Double) As Double
On Error GoTo Obsluga_Bledu
Dziel = x/y
Koniec_Funkcji:
Exit Function
Obsluga_Bledu:
Dziel = 0
Resume Koniec_Funkcji
End Function
Składnia:
[Public | Private] [Static] Function nazwa [(lista_argumentów)] [As typ_danych]
[instrukcje]
[nazwa = wyrażenie]
[Exit Function]
[instrukcje]
[nazwa = wyrażenie]
End Function
Przykład:
Function Dziel (x As Double, y As Double) As Double
Dziel = x/y
End Function
Typ danych |
Rozmiar |
Zakres wartości |
Byte |
1 bajt |
od 0 do 255 |
Boolean |
2 bajty |
przyjmuje wartości True lub False |
Integer |
2 bajty |
od -32768 do 32767 |
Long |
4 bajty |
od -2147483648 do 2147483647 |
Single |
4 bajty |
typ zmiennoprzecinkowy pojedynczej precyzji; od -3,402823e38 do -1,401298e-45 dla wartości ujemnych; od 1,401298e-45 do 3,402823e38 dla wartości dodatnich |
Double |
8 bajtów |
typ zmiennoprzecinkowy podwójnej precyzji; od -1,79769313486232e308 do -4,94065645841247e-324 dla wartości ujemnych; od 4,94065645841247e-324 do 1,79769313486232e308 dla wartości dodatnich |
Currency |
8 bajtów |
typ stałoprzecinkowy (4 miejsca po przecinku); od -922337203685477,5808 do 922337203685 477,5807 |
Date |
8 bajtów |
od 01.01.0100 do 31.12.9999 |
String |
10 bajtów + długość ciągu |
od 0 do 2 mld znaków |
Object |
4 bajty |
wskazanie na obiekt |
Variant |
16 bajtów (jako liczba) |
jak double |
Variant |
22 bajty + długość ciągu |
jak string |
Tabela 1. Ważniejsze typy zmiennych w VBA
Przykład:
Private Function Dziel (x As Double, y As Double) As Double
If y = 0 then
Dziel = 0
Exit Function
End if
Dziel = x/y
End Function
Składnia:
Dim nazwa_zmiennej As typ_danych
Przykład:
Dim str As String
Składnia:
Dim nazwa_zmiennej(rozmiar_tablicy) As typ_danych
Przykład:
Dim TablicaDziesiecioelementowa(9) As Integer
Dim TablicaPiecioelementowa(1 To 5) As Long
Dim TablicaDwuwymiarowa(9, 9) As Integer
Składnia:
Private nazwa_zmiennej As typ_danych
Przykład:
Private str As String
Składnia:
If warunek Then
[instrukcje]
[ElseIf warunek_n Then
[instrukcje_elseif] ...
[Else
[instrukcje_else]]
End If
Składnia:
Select Case zmienna
Case wartość_1
Instrukcje_1
Case wartość_2, wartość_3
Instrukcje_2
Case wartość_4 To wartość_6
Instrukcje_3
Case Is > wartość_8
Instrukcje_4
Case Else
Instrukcje_5
End Select
Składnia:
Do [{While | Until} warunek]
[instrukcje]
[Exit Do]
[instrukcje]
Loop
Do
[instrukcje]
[Exit Do]
[instrukcje]
Loop [{While | Until} warunek]
For zmienna = wartość_początkowa to wartość_końcowa step krok
[instrukcje]
[Exit For]
[instrukcje]
Next [zmienna]
For Each zmienna in tablica_lub_lista
[instrukcje]
[Exit For]
[instrukcje]
Next [zmienna]
Przykład (po zakończeniu pętli i = 10):
Dim i As Integer
i = 0
Do While i < 10
i = i + 1
Loop
Przykład (i = 0, a pętla nie wykonuje się):
Dim i As Integer
i = 0
Do Until i < 10
i = i + 1
Loop
Przykład (po zakończeniu pętli i = 10):
Dim i As Integer
i = 0
Do
i = i + 1
Loop While i < 10
Przykład (pętla wykonuje się jeden raz; i = 1):
Dim i As Integer
i = 0
Do
i = i + 1
Loop Until i < 10
Przykład:
Dim Tablica(10) As Integer, i As Integer
For i = 0 to i < 5
Tablica(i) = i
Next i
Przykład:
Dim Tablica(10) As Integer, i As Integer
For Each i In Tablica
Tablica(i) = i
Next i
31