Sub Statement
Aprašo paprogramę.
Sub or Function statements are similar methods, without distinction. They receive parameters by reference allowing them to be modified. LibreOffice Basic compiler accepts their respective syntax to be used interchangeably.
[Private | Public] Sub name[(argument1 [As typename][, argument2[char][,...]])]
' sakiniai
[Exit Sub]
' sakiniai
End Sub
vardas: Paprogramės pavadinimas.
argumentai: Pasirenkami parametrai, kuriuos norite perduoti paprogramei.
argument fragment
{[Optional [ByRef|ByVal]]|ParamArray} argument {{As typename|char}[ = expression]|[()]As Variant}
Parametrai
Pasirenkama: Argumentas neprivalomas.
ByRef: Argumentas perduodamas nuoroda. ByRef yra numatytasis.
ByVal: Argumentas perduodamas reikšme. Kviečiančioji paprogramė gali modifikuoti jo reikšmę.
char: Simbolinio tipo apibrėžimas.
tipo vardas: Paprastojo duomenų tipo vardas. Bibliotekos ar modulio apibrėžti tipai taip pat gali būti specifikuojami.
= reiškinys: Nurodykite numatytąją argumento reikšmę, atitinkančią apibrėžtą tipą.Optional būtina nurodyti kiekvienam argumentui parenkant numatytąją reikšmę.
ParamArray: Naudokite ParamArray, kai parametrų skaičius nenusakytas. Pavyzdys yra „Calc“ vartotojo aprašyta funkcija. Naudojamas ParamArray turi būti taikomas paskutiniam paprogramės argumentui.
NaudojantParamArray arba = reiškinys būtina modulyje prieš vykdomos programos kodą įdėti Parinkties suderinamumas.
Kai naudojama Option VBASupport 1 Pasirinktinai, tai argumentai, neturintys numatytųjų reikšmių, (= expression) inicinializuojami pagal jų duomenų tipą, išskyrus esant Variantas.
Pavyzdžiai:
Sub ExampleExit
Dim sReturn As String
Dim sListArray(10) As String
Dim siStep As Single
siStep = 0 To 10 ' Užpildykite masyvą testo duomenimis
sListArray(siStep) = chr$(siStep + 65)
MsgBox sListArray(siStep)
Next siStep
sReturn = LinSearch(sListArray(), "B")
Print sReturn
End Sub
Function LinSearch( sList(), sItem As String ) As Integer
Dim iCount As Integer
' Eilutės paieška kaip tekstinis masyvas:sList() tekstinis įrašas:
' Grąžinama reikšmė Ar indekso reikšmė arba 0 (nulis)
For iCount=1 To Ubound( sList() )
If sList( iCount ) = sItem Then
Išėjimas ' sItem rastas
End If
Next iCount
If iCount = Ubound( sList() ) Then iCount = 0
LinSearch = iCount
End Function