Utilisation de fonction correctement

Bonjour,

J'ai ce code simple, mais je souhaiterais que ces 2 fonctions fonctionne correctement :

Sub Test()
    Dim A as integer
    Dim B as integer
    Dim C as integer
    Dim D as boolean
    D = False

    A = cells(1,1).value
    B = cells(2,1).value

    C = calcul(A, B)

    D = valide(C,D)

    if D = True then
        msgbox("VALIDE")
    else
            msgbox("INVALIDE")
    end if
End Sub

Function calcul(A,B)
    'calcul à faire + retourner'
    AxB
End Function

Function valide(ByVal C As String, ByRef D As Boolean)
    if C = 2 then
        D = true
    else
        D = false
    end if
End Function

La fonction calcul devrait permettre d'effectuer le calcul et la valide permet de changer D (boolean) en true ou false selon un simple test.

Comment communiquer des variables à des fonctions et retourner un boolean, ou alors communiquer des variables et retourner les variables modifié ?

D'avance merci pour votre aide.

Bonjour.

Function Calcule(A As Long, B As Long) As Long
         Calcule = A * B
End Function

Function Valide(C As Long) As Boolean
         Valide = C = 2
End Function

Sub Test()
    If Valide(Calcule(Cells(1).Value, Cells(2, 1).Value)) Then MsgBox ("VALIDE") Else MsgBox ("INVALIDE")
End Sub

Sinon droit au but :

Sub Test2()
    MsgBox IIf(Cells(1).Value * Cells(2, 1).Value = 2, "VALIDE", "INVALIDE")
End Sub

Merci cela fonctionne en fait ce n'est pas tant la simplicité, c'est le fonctionnement que je voulais comprendre.

Sujet résolu merci beaucoup, considérer la fonction fille comme un objet dans la fonction mère, je pense avoir compris.

Merci


Mais pourquoi pour les variables de types intéger tu ne met pas "integer" comme type dans les parenthèse de la fonction ?

Le produit d'Integer pouvant dépasser la capacité du type Integer, mieux vaut utiliser le type Long

Exemple :

Sub Demo()
    Dim A As Integer
        A = 200 * 170 
End Sub

Pour les paramètres de la fonction, tu peux utiliser Integer, tant que les valeurs ne dépassent pas son cadre …

Noté merci

Rechercher des sujets similaires à "utilisation fonction correctement"