Innhold

# Sub Uttrykk

Definerer en subrutine.

### Syntaks:

    [Private | Public] Sub name[(argument1 [As typename][, argument2[char][,...]])]
        ' uttrykk
        [Exit Sub]
        ' uttrykk
    End Sub

### Parametre:

navn: Navn på subrutinen.

argumenter: Valgfrie parametere som du vil overføre til subrutinen.

##### argumentfragment

          {[Optional [ByRef|ByVal]]|ParamArray} argument {{As typename|char}[ = expression]|[()]As Variant}

##### Parametre

Valgfritt: Argumentet er ikke obligatorisk.

ByRef: Argumentet sendes via en referanse. ByRef som er standard.

ByVal: Argumentet sendes med verdi. Verdien kan endres av den anropte rutinen.

char: Skriv inn deklarasjonstegn.

typenavn: Primitivt datatypenavn. Bibliotek- eller moduldefinerte typer kan også spesifiseres.

= uttrykk: Spesifiser en standardverdi for argumentet som samsvarer med dens deklarerte type. Valgfritt er nødvendig for hvert argument som spesifiserer en standardverdi.

ParamArray: Bruk ParamArray når antallet parametere er ubestemt. Et typisk scenario er en Calc brukerdefinert funksjon. Bruk av ParamArray bør begrenses til det siste argumentet i en rutine.

Bruk avParamArray eller = uttrykk krever at Option Compatible plasseres foran den kjørbare programkoden i en modul.

Når du bruker Alternativ VBASupport 1, Valgfri argumenter uten standardverdi (= uttrykk) initialiseres i henhold til deres datatype, bortsett fra hvis Variant.

##### typenavn fragment

          {Boolean|Byte|Currency|Date|Double|Integer|Long|Object|Single|String|Variant}

##### char fragment

          { % | & | ! | # | $ | @ }

### Eksempler:

    Sub ExampleExit
    Dim sReturn As String
    Dim sListArray(10) As String
    Dim siStep As Single
        For siStep = 0 Til 10 ' Fill array with test data
            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 searches a TextArray:sList() for en Tekstoppføring:
    ' Returverdi Er indeksen til oppføringen eller 0 (null)
        For iCount=1 To Ubound( sList() )
            If sList( iCount ) = sItem Then
                Avslutt for ' sElement funnet
            End If
        Next iCount
        If iCount = Ubound( sList() ) Then iCount = 0
        LinSearch = iCount
    End Function

Lignende emner

Grunnleggende om subrutiner

Bruke prosedyrer, funksjoner og egenskaper

Funksjonsuttrykk

Egenskapsuttrykk

Supporter oss!