Calculatrice VBA
Fermé
quentiningwiler
Messages postés
6
Date d'inscription
dimanche 5 juin 2016
Statut
Membre
Dernière intervention
2 avril 2017
-
Modifié par quentiningwiler le 5/06/2016 à 23:44
quentiningwiler Messages postés 6 Date d'inscription dimanche 5 juin 2016 Statut Membre Dernière intervention 2 avril 2017 - 6 juin 2016 à 13:13
quentiningwiler Messages postés 6 Date d'inscription dimanche 5 juin 2016 Statut Membre Dernière intervention 2 avril 2017 - 6 juin 2016 à 13:13
A voir également:
- Calculatrice VBA
- Installer calculatrice sur mon portable - Télécharger - Calcul & Conversion
- Calculatrice gratuit - Télécharger - Calcul & Conversion
- Vba attendre 1 seconde ✓ - Forum VB / VBA
- Vba range avec variable ✓ - Forum VB / VBA
- Vba récupérer valeur cellule ✓ - Forum VB / VBA
1 réponse
via55
Messages postés
14474
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
19 septembre 2024
2 728
Modifié par via55 le 6/06/2016 à 01:24
Modifié par via55 le 6/06/2016 à 01:24
Bonsoir
La macro associée au bouton calculer doit être quelque chose comme ça :
-Tu n'avais pas le bon nom comme Private sub
-Tu avais au début 3 IF et un seul End iF ( on peut se passer de 3 End If en mettant les instructions IF ... THEN .... sur la meme ligne)
- select case operateur ne renvoyait à rien car operateur n'est le nom d'aucun contrôle, le contrôle correspondant étant nommé Combobox1 (par contre si dans les propriétés de ce comboxbox tu changes son Name pour operateur alors la oui tu dois écrire Select case operateur)
- il faut convertir les résultats des textbox en valeur numériques avec Val pour effectuer les calculs
2) A quoi sert ton textbox5 ??
3) Au lieu d'avoir un combobox pour le choix de l'opérateur ce serait plus sympa d'avoir 4 boutons avec les 4 signes opératoires et un bouton avec = qui remplacerait le bouton calculer
Cdlmnt
Via
"L'imagination est plus importante que le savoir." A. Einstein
La macro associée au bouton calculer doit être quelque chose comme ça :
Private Sub CommandButton4_Click() If Me.TextBox4.Value = "" Then MsgBox "Entrez le premier chiffre": Exit Sub If Me.TextBox3.Value = "" Then MsgBox "Entrez le second chiffre": Exit Sub: Exit Sub If Me.ComboBox1.Value = "" Then MsgBox "Choisir l'opérateur (+, -, *, /)": Exit Sub Select Case ComboBox1 Case "+" resultat = Val(Me.TextBox4.Value) + Val(Me.TextBox3.Value) Case "-" resultat = val(Me.TextBox4.Value) - val(Me.TextBox3.Value) Case "*" resultat = val(Me.TextBox4.Value) * val(Me.TextBox3.Value) Case "/" If Me.TextBox3.Value = 0 Then MsgBox "Division par 0 impossible" Exit Sub End If resultat = val(Me.TextBox4.Value) / val(Me.TextBox3.Value) Case Else MsgBox "Erreur dans la saisie de l'opérateur" Exit Sub End Select MsgBox ("Le résultat est : " & resultat) End Sub
-Tu n'avais pas le bon nom comme Private sub
-Tu avais au début 3 IF et un seul End iF ( on peut se passer de 3 End If en mettant les instructions IF ... THEN .... sur la meme ligne)
- select case operateur ne renvoyait à rien car operateur n'est le nom d'aucun contrôle, le contrôle correspondant étant nommé Combobox1 (par contre si dans les propriétés de ce comboxbox tu changes son Name pour operateur alors la oui tu dois écrire Select case operateur)
- il faut convertir les résultats des textbox en valeur numériques avec Val pour effectuer les calculs
2) A quoi sert ton textbox5 ??
3) Au lieu d'avoir un combobox pour le choix de l'opérateur ce serait plus sympa d'avoir 4 boutons avec les 4 signes opératoires et un bouton avec = qui remplacerait le bouton calculer
Cdlmnt
Via
"L'imagination est plus importante que le savoir." A. Einstein
6 juin 2016 à 12:09
Je te remercie déjà pour ta réponse rapide. Aussi, j'ai bien compris. Le faite de choisir l'opérateur sous la forme d'une combobox m'est imposé. Ensuite, étant donné que je ne réussi pas à calculer est afficher le résultat directement dans la case textbox5 j'ai fait apparaître un message. Sais-tu comment garder en mémoire les résultats obtenu.
Cordialement,
Quentin
6 juin 2016 à 12:44
1) Pour afficher le résultat dans le texbox5 au lieu de la ligne avec le msgbox tu mets simplement
Textbox5=resultat
2) Pour garder les résultats dans la colonne A, à la fin de la macro précédente tu rajouets ces lignes :
n = Application.WorksheetFunction.CountA(Range("A:A"))' NBVAL dans col A
range("A" & n+1)=resultat
Cdlmnt
Via
6 juin 2016 à 13:13
Et passe une bonne journée