Allez ===>> je vais te mettre sur la bonne voie (tu vas voir) :
regarde ce que fait ceci :
Private Sub CommandButton3_Click()
Dim a As Single, b As Single, c As Single, p As Single
a = toto("longueur du côté a du triangle.")
b = toto("longueur du côté b du triangle.")
c = toto("longueur du côté c du triangle.")
p = a + b + c
MsgBox "le périmètre de ce triangle est donc " & p
End Sub
Private Function toto(msg As String) As Single
toto = 0
Do While Not IsNumeric(toto) Or toto = 0
toto = Application.InputBox(Title:=msg, prompt:="un nombre entier ou decimal uniquement" & vbCrLf & "séparateur décimal : ,", Type:=1)
Loop
End Function
Vu ? tu as ainsi d'emblée tes numériques pour les 3 côtés et peut faire avec toutes les opérations de ton choix.
Note : j'ai ici calculé le seul périmètre, juste pour te montrer que a,b et c sont maintenant bien des numériques.
Je ne partage pas tes approches du calcul de la surface, etc ...
Les miennes sont différentes, mais je ne veux pas traiter ici des aspects de calculs, donc des connaissances mathématiques (et pas de développement, seule vocation de ce forum).
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient