Collabora Office 24.04 Help
Definieert een subprocedure.
[Private | Public] Sub name[(argument1 [As typename][, argument2[char][,...]])]
' instructies
[Exit Sub]
' instructies
End Sub
naam: Naam van de subroutine.
arguments: Optionele parameters die u wilt doorgeven aan de subroutine.
{[Optional [ByRef|ByVal]]|ParamArray} argument {{As typename|char}[ = expression]|[()]As Variant}
Optioneel: Het argument is niet verplicht.
ByRef: Het argument wordt op referentie doorgegeven. ByRef is de standaardwaarde.
ByVal: De waarde wordt meegegeven. Deze waarde kan door de aangeroepen routine worden gewijzigd.
char: Het teken voor de declaratie van het type.
typename: Naam van het primitieve datatype. U kunt ook types specificeren die in bibliotheken en modules zijn gedefinieerd.
= expression: Specificeer een standaardwaarde die overeenkomt met het type. Als u een standaardwaarde voor een argument specificeert, dan is het logisch dat het argument optioneel is.
ParamArray: Gebruik ParamArray als het aantal parameters niet bekend is. Een voorbeeld hiervan is een door de gebruiker gedefinieerde functie in Calc. Als het argument ParamArray gebruikt wordt dan zou het altijd het laatste genoemde argument van de routine moeten zijn.
Bij het gebruik van ParamArray of = expression is het verplicht dat Option Compatible wordt gebruikt in de code van de module voor het uitvoerbare gedeelte van de code.
Bij het gebruik van Option VBASupport 1, Optional worden argumenten zonder standaardwaarde (= expression) geïnitialiseerd op grond van hun gegevenstype, m.u.v het type Variant.
Sub ExampleExit
Dim sReturn As String
Dim sListArray(10) As String
Dim siStep As Single
For siStap = 0 To 10 ' Array vullen met testgegevens
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
' LijstZoek zoekt in een TekstArray:sLijst() naar een TekstItem:
' Teruggegeven waarde is de index van het item, of 0 (Nul)
For iCount=1 To Ubound( sList() )
If sList( iCount ) = sItem Then
Exit For ' sItem gevonden
End If
Next iCount
If iCount = Ubound( sList() ) Then iCount = 0
LinSearch = iCount
End Function