Formule complexe qui ne passe pas en VBA

Résolu/Fermé
Tessel75 - 12 août 2021 à 00:16
 Tessel75 - 12 août 2021 à 16:07
Bonsoir à tous,
J'ai une formule complexe que je n'arrive pas à transcrire en VBA. Quelqu'un pourrait-il m'aider?
La formule mathématique simplifiée est : '(A*B)/(1-PUISSANCE(1+B;-D))
soit : '(A*B)/(1- (1+B ^ -D))

En VBA j'ai écrit : E = (A * B) / (1 - Power(1 +B, -D))

Il accroche sur Power, en me disant que la fonction est inconnue, alors que je l'ai entrée avec l'assistant.

Merci pour votre aide


Configuration: Windows / Firefox 90.0
A voir également:

4 réponses

jordane45 Messages postés 38162 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 6 mai 2024 4 658
Modifié le 12 août 2021 à 00:37
Bonjour,

Pour le "power", c'est, il me semble avec le workSheetFunction
application.worksheetfunction.power(number,power)


Mais sinon, en utilisant simplement un ^ ça devrait marcher
X = 2^2  ' doit donner 4  



1
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
12 août 2021 à 09:18
Bonjour,

Range("E4") = cells(4,"E") ou cells(4,5)
donc cells(ligne,colonne)
1
Merci pour ta réponse.
Alors effectivement, le VBA accepte la notation ^ , mais au moment du calcul, ça coince. Je viens d'essayer.

En même temps je profite de ta réponse, pour en poser une très simple, parce qu'il y a longtemps que je ne pratique plus le VBA sur Excel; comment note-t-on les références absolues des cellules en VBA? Dans le tutoriel MS, j'ai trouvé Range, (Range ("A2"), Range ("B5"), etc), mais je me demande si avec Cells(A2), ce ne serait pas plus facile à relire. J'ai le modèle en références relatives, mais pas en références absolues. Merci
0
OK: Je m reprends; la formule passe bien avec la notation " ^ " . Excel s'est mélangé les pinceaux avec un autre tableau ancien que j'avais ouvert comme modèle.

Reste la 2ème partie de ma question à propos de Range () et de Cells(); Je te remercie.
0
Merci Michel, ça passe. Bonne journée
0