Function Statement

Defines a subroutine that can be used as an expression to determine a return type.

note

Sub, Function or Property statements are similar methods, without distinction. They receive parameters by reference allowing them to be modified in return. Collabora Office Basic compiler accepts their respective argument syntax to be used interchangeably.


Syntaks:

Funksjonsuttrykks-diagram


  [Private | Public] Function Name[char] (argument1 [As Type][, argument2[char][,...]]) [As typename]
          uttrykk
      [Exit Function]
          uttrykk
  End Function

Parametre:

omfang: Funksjons standardomfang er Offentlig. Et Privat-omfang angir en intern modulrutine, ikke ment å brukes fra andre moduler.

navn: Navn på subrutinen som skal inneholde verdien som returneres av funksjonen.

argumenter: Parametere som skal sendes til subrutinen.

argument fragment

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.

tip

UsingParamArray or = expression require Option Compatible to be placed before the executable program code in a module.


warning

When using Option VBASupport 1, Optional arguments with no default value (= expression) are initialized according to their data type, except if Variant.


typenavn fragment

primitive datatypefragment


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

skriv deklarasjonstegn


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

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

Supporter oss!