LibreOffice 7.2 laguntza
Azpierrutina bat definitzen du.
Sub, Function eta Property instrukzioak antzeko metodoak dira, bereizketarik gabeak. Parametroak erreferentzien bidez jasotzen dituzte eta haiek aldatu ditzakete itzultzeko. LibreOffice Basic konpilatzaileak elkarren ordez erabiltzeko moduan onartzen ditu haien argumentuak.
[Private | Public] Sub name[(argument1 [As typename][, argument2[char][,...]])]
' instrukzioak
[Exit Sub]
' instrukzioak
End Sub
Izena: Azpierrutinaren izena.
argumentuak: Azpierrutinari pasatuko zaizkion aukerako parametroak.
{[Optional [ByRef|ByVal]]|ParamArray} argument {{As typename|char}[ = expression]|[()]As Variant}
Optional: Argumentua ez da derrigorrezkoa.
ByRef: Argumentua erreferentzia gisa pasatzen da. ByRef da aukera lehenetsia.
ByVal: Argumentua balio gisa pasatzen da. Balio hori deitutako errutinak soilik aldatu dezake.
char: Mota deklaratzeko karakterea.
motaizena: Jatorrizko datu-moten izena. Liburutegiekin edo moduluekin definitutako motak ere zehaztu daitezke.
= expression: Zehaztu balio lehenetsi bat argumenturako. Deklaratutako motarekin bat egin behar dy. Optional erabiltzea beharrezkoa da balio lehenetsi bat zehazten duen argumentu bakoitzerako.
ParamArray: Erabili ParamArray parametro kopurua zehaztu gabe dagoenean. Egoera tipiko bat erabiltzaileak definitutako Calc funtzioak dira. ParamArray erabiltzea errutina baten azken argumentura mugatu beharko litzateke.
ParamArray edo = expression erabiltzeko, Option Compatible kokatu behar da moduluaren programa-kode exekutagarriaren aurrean.
Option VBASupport 1 erabiltzean, balio lehenetsirik gabeko (= expression) Optional argumentuak beren datu motaren arabera hasieratzen dira, Variant kasuan salbu.
Sub ExampleExit
Dim sReturn As String
Dim sListArray(10) As String
Dim siStep As Single
For siUrratsa = 0 to 10 ' Bete matrizea probako datuekin
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
' BilaketaLerroa-k SarreraTestua:sZerrenda() bilatzen du TestuSarrerantzat:
' Itzulera-balioa sarrerako indizea edo 0 (Null) da
For iCount=1 To Ubound( sList() )
If sList( iCount ) = sItem Then
Exit For ' sElementua aurkituta
End If
Next iCount
If iCount = Ubound( sList() ) Then iCount = 0
LinSearch = iCount
End Function