Quote Originariamente inviata da ing82 Visualizza il messaggio
L'elaborazione prevede anche delle variabili temporanee necessarie al suo completamento, di cui sarebbe utile conoscere il valore, ma la funzione puo' restituire un solo valore, per gli altri che fare?
Si usano dei parametri per riferimento, dichiarati ByRef, esempio:
codice:
Public Function myFunction(Byval par1 As Long, ByVal par2 As Long, ByRef parRif1 As Boolean, ByRef parRif2 As String) As Long
     Dim lngRet As Long
     If (par1 > 0) And (Par2>0) Then
          lngRet = (par1 * par2)
          parRif1 = True
          parRif2 = "Moltiplicazione eseguita con successo"
      Else
           parRif1 = False
          parRif2 = "Moltiplicazione fallita"
      End If
      MyFunction = lngRet
End Function

Rem -------------------------------------
Rem Uso della funzione
Rem -------------------------------------
Dim lngRet As Long
Dim bEsito As Boolean
Dim sMsg As String

lngRet = MyFunction(15, 2 , bEsito, sMsg)
Debug.Print lngRet, besito, sMsg