Création de fonction VBA dans Excel

gemstar

Membre enregistré
18 Mars 2012
6
0
Bonjour,

J'ai beau avoir recherché je n'ai pas trouvé de post similaire à mon problème,
je suis désolé si ce problème a déjà été résolu

je n'arrive pas à créer de fonction VB, enfin si j'y arrive mais je n'arrive pas a l'utiliser sur excel ensuite

Public Function RSI(plage As Range) As Double
h = 0
b = 0
For i = 0 To 13 Step 1
If plage.Offset(i, 0) > 0 Then
h = h + plage.Offset(i, 0).Value
Else
b = h + plage.Offset(i, 0).Value
End If
Next i
RSI = 100 - (100 / (1 + h / b))
End Function

Mais lorsque je l'utilise par exemple sur une cellule (sur Excel et non sur VB)
"=RSI(G5)"
Ma fonction n'existe pas c'est impossible de l'utiliser, je ne comprends pas

Merci :-)
 
Curieux. Chez moi (Excel 2011 en 14.4.8 sur Snow Leopard) ça fonctionne… Ôte-nous d'un doute : tu ne saisis pas les guillemets quand tu l'utilises dans ta feuille, hein ?
 
Bien sur que je l'ai enlève, lorsque je vais sur un Windows ça marche parfaitement, mais sur mon mac ( et aussi sur le mac d'une amie ) ça ne fonctionne pas, je ne comprends pas
 
Je ne sais pas ce qu'est sensé précisément faire ta fonction, ça dépend probablement du contexte. Chez moi, comme vu, elle est reconnue et donne systématiquement "50" comme résultat dès lors que la cellule indiquée comme source est supérieure à zéro, apparemment. En plus de la version 14.48 sous Snow Leopard et Yosemite, j'ai même testé avec la version 2016 beta.

Il faudrait peut-être que tu donnes plus de précisions sur le contexte, sur ce que tu fais, etc.