Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Calculer le BMI (IMC) en VBA

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

bomagicmusic

XLDnaute Occasionnel
Bonjour,

J'ai crée un user form qui me permet de rentrer la taille en cm et le poids en kg sans virgule.
J'ai donc la textbox taille et la textbox poids.
j'aimerai que le BMI se calcul automatiquement et aparaisse dans la textbox BMI, arrondie au chiffre le plus proche donc sans virgule.

Pourl'instant j'ai ce code:

Private Sub TextBoxTaille_Change()
TextBoxBMI = TextBoxPoids / (TextBoxTaille / 100 * TextBoxTaille / 100)
TextBoxBMI = Format(BMI, "##")
End Sub

Mais il doit y avoir une erreur quelque part
Quelqu'un a t'il la solution?

Merci
 
Re : Calculer le BMI (IMC) en VBA

Bonjour bomagicmusic, le fil, le forum,
Sans fichier pour tester rien n'est certain. Essai comme ça... ... peut être.
VB:
Private Sub TextBoxTaille_Change()
TextBoxBMI = Format(TextBoxPoids / ((TextBoxTaille / 100) * (TextBoxTaille / 100)), "##")
End Sub
Cordialement
 
Re : Calculer le BMI (IMC) en VBA

Ben oui ça marche
Des heures que je tournais en rond merci
en revanche si je veux corriger la taille (erreur de saisie par exemple) ça plante avec message incompatibilité de type, une idée?
 
Re : Calculer le BMI (IMC) en VBA

Re
Comme tu utilise des textBox, il y a un risque de faire des calculs avec du texte....
Essai de forçer les valeur en numérique avec, par exemple Clng (F1 est ton amie)

TextBoxBMI = Format(Clng(TextBoxPoids) / ((Clng(TextBoxTaille) / 100) * (Clng(TextBoxTaille) / 100)), "##")

Si ce n'est pas bon, il faudra quand même penser à fournir un ti'exemple....
Cordialement
 
Re : Calculer le BMI (IMC) en VBA

Bonsoir à tous


Une autre façon qui semble fonctionner

Code:
MsgBox Val(TextBox1 / (TextBox2 / 100) ^ 2)

Pour rappel: masse en kilogramme et taille en mètre
Ex: 55 kg et 1,50 donne bien 24 avec la macro ci-dessus.
 
Re : Calculer le BMI (IMC) en VBA

Re bomagicmusic, Bonjour Staple 🙂,
Pour le user form Nouveau Patient :
Tout fonctionne si :
- On bloque le traitement en cas de testBox vide 🙄
- On utilise normalement la proposition de Staple (ce n'était qu'un exemple, le MsgBox est une boite d'avertissement)

Donc en prenant tout ça en compte, je pense que ceci devrait aller:
VB:
Private Sub TextBoxTaille_Change()
If TextBoxTaille = "" Or TextBoxPoids = "" Then Exit Sub
TextBoxBMI = Val(TextBoxPoids / (TextBoxTaille / 100) ^ 2)
End Sub
Cordialement
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…