Περιεχόμενα

# Πρόταση Function (συνάρτηση)

Μια συνάρτηση είναι ένα μπλοκ κώδικα που εκτελείται, όταν καλείται. Μια συνάρτηση συνήθως καλείται σε μια έκφραση.

Μπορείτε να μεταβιβάσετε δεδομένα, γνωστά ως παράμετροι ή ορίσματα, σε μια συνάρτηση. Μπορείτε να μεταβιβάσετε μια παράμετρο με τιμή ή με αναφορά. Όταν γίνεται με αναφορά, οι τροποποιήσεις που εφαρμόζονται στην παράμετρο στη συνάρτηση θα αποστέλλονται πίσω στον κώδικα κλήσης.

Μια συνάρτηση συνήθως επιστρέφει δεδομένα ως αποτέλεσμα.

### Σύνταξη:

      [Private | Public] Function Name[char] (argument1 [As Type][, argument2[char][,...]]) [As typename]
              προτάσεις
          [Exit Function]
              προτάσεις
      End Function

### Παράμετροι:

Περιοχή: Η προεπιλεγμένη περιοχή της συνάρτησης είναι Public (δημόσια). Μια Private (ιδιωτική) περιοχή δηλώνει άρθρωμα εσωτερικής ρουτίνας, που δεν αποσκοπεί να χρησιμοποιηθεί από άλλα αρθρώματα.

όνομα: Το όνομα της υπορουτίνας που θα περιέχει την επιστρεφόμενη τιμή από τη συνάρτηση.

ορίσματα: Οι παράμετροι που περνάνε στην υπορουτίνα.

##### τμήμα ορίσματος

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

##### Παράμετροι

Optional: Το όρισμα δεν είναι υποχρεωτικό.

ByRef: Το όρισμα περνιέται με αναφορά. Το ByRef είναι η προεπιλογή.

ByVal: Το όρισμα περνιέται κατά τιμή. Η τιμή του μπορεί να τροποποιηθεί από τη ρουτίνα που καλεί.

char: Χαρακτήρας δήλωσης τύπου.

typename: Όνομα τύπου πρωτογενών δεδομένων. Μπορούν επίσης να καθοριστούν τύποι που καθορίζονται από βιβλιοθήκη ή άρθρωμα.

= expression: Καθορίστε μια προεπιλεγμένη τιμή για το όρισμα, που συμφωνεί με τον δηλωμένο τύπο του. Το Optional είναι απαραίτητο για κάθε όρισμα καθορίζοντας μια προεπιλεγμένη τιμή.

ParamArray: Χρησιμοποιήστε ParamArray όταν ο αριθμός των παραμέτρων είναι απροσδιόριστος. Μια τυπική εκδοχή είναι αυτή μιας συνάρτησης Calc του χρήστη. Η χρήση του ParamArray πρέπει να περιοριστεί στο τελευταίο όρισμα μιας ρουτίνας.

Η χρήση της ParamArray ή της = expression απαιτεί η Option Compatible να τοποθετηθεί πριν τον εκτελέσιμο κώδικα του προγράμματος σε ένα άρθρωμα.

Κατά τη χρήση της Option VBASupport 1, Optional ορίσματα χωρίς προεπιλεγμένη τιμή (= expression) αρχικοποιούνται σύμφωνα με τον τύπο των δεδομένων τους, εκτός από Variant.

##### τμήμα ονόματος τύπου

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

##### τμήμα χαρακτήρα

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

## Παραδείγματα:

    Sub ExampleExit
    Dim sReturn As String
    Dim sListArray(10) As String
    Dim siStep As Single
        For siStep = 0 to 10 ' Γεμίζει τον πίνακα με τα δεδομένα δοκιμής
            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 αναζητεί ένα TextArray:sList() για TextEntry:
    ' Η τιμή επιστροφής είναι ο δείκτης της καταχώρησης ή 0 (Null)
        For iCount=1 To Ubound( sList() )
            If sList( iCount ) = sItem Then
                Exit for ' το sItem βρέθηκε
            End If
        Next iCount
        If iCount = Ubound( sList() ) Then iCount = 0
        LinSearch = iCount
    End Function

Σχετικά θέματα

Βασικές υπορουτίνες

Χρήση διεργασιών, συναρτήσεων και ιδιοτήτων

Πρόταση Sub

Πρόταση Property