Collabora Office 24.04 Hjælp
Angiver en subrutine.
[Private | Public] Sub name[(argument1 [As typename][, argument2[char][,...]])]
' udtryk
[Exit Sub]
' udtryk
End Sub
name: Navn på subrutinen.
arguments: Valgfrie parametre, du vil overføre til subrutinen.
{[Optional [ByRef|ByVal]]|ParamArray} argument {{As typename|char}[ = expression]|[()]As Variant}
Optional: Argumentet er ikke obligatorisk.
ByRef: Argumentet overføres ved reference. ByRef er standarden.
ByVal: Argumentet overføres ved værdi. Dets værdi kan ændres af den kaldte rutine.
char: Typeerklærings-tegn.
typename: Primitivt datatypename. Der kan også angives biblioteker eller moduler, der er defineret som typer.
= expression: Angiv standardværdi til argumentet, der matcher dets erklærede type. Optional er nødvendig for ethvert argument, der angiver en standardværdi.
ParamArray: Brug ParamArray, når antallet af parametre er ubestemt. Et typisk scenarie er en brugerdefineret Calc-funktion. Brug af ParamArray bør begrænses til den sidste parameter i en rutine.
Brug af ParamArray eller = expression kræver, at Option Compatible er placeret foran den eksekverbare programkode i modulet.
Under brug af Option VBASupport 1 initialiseres Optional-argumenter uden nogen standardværdi (= expression) efter deres datatype, undtagen hvis den er Variant.
Sub ExampleExit
Dim sReturn As String
Dim sListArray(10) As String
Dim siStep As Single
For siStep = 0 to 10 ' Fyld array med testdata
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
' Linsearch søger en TextArray:sList() efter en TextEntry:
' Returværdi er elementets indeks eller 0 (Null)
For iCount=1 To Ubound( sList() )
If sList( iCount ) = sItem Then
Exit for ' sItem fundet
End If
Next iCount
If iCount = Ubound( sList() ) Then iCount = 0
LinSearch = iCount
End Function