Bonjour,

Je débute en Visual Basic et je rencontre un problème pour créer une fonction sous excel.
J'ai rédigé le code ci-dessous dans un module VBA, la procédure (sub) s'execute très bien et me donne la valeur souhaitée, en revanche quand j'utilise ma fonction directement dans excel, cela inscrit simplement #VALUE! en lieu et place de la valeur qui s'affiche dans ma messagebox.

Merci beaucoup par avance,

Code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Dim Plage As Ranges
 
Function TotalRefacturable(Plage)
    Dim compteur As Integer, cellule As Range
 
    resultat = 0
 
    For Each cellule In Range(Plage)
 
        Select Case cellule.Offset(0, 1).Value
        Case "Y"
            resultat = resultat + cellule.Value
 
        Case "N"
            'Test
        Case Else
            'Test
        End Select
    Next
 
    TotalRefacturable = resultat
 
End Function
 
 
Sub test()
MsgBox (TotalRefacturable("C9:C17"))
End Sub