VBA Excel 2007 additions-soustractions

Résolu/Fermé
Julien - 19 nov. 2010 à 15:49
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 19 nov. 2010 à 18:50
Bonjour,


J'essaie d'écrire un code permettant d'automatiser un calcul (addition + soustraction). Voilà ce que j'ai écrit (je suis débutant):

Sub CommandButton1_Click()
Dim r As String
Dim s As String
Dim c As String
Dim p As String
Dim calc As String

s = TextBox1
c = TextBox2
p = TextBox3

calc = s + p - c
r = TextBox4 = calc.Show
CommandButton1

End Sub

Le CommandButton1 est sensé actionner le calcul et afficher le résultat dans la TextBox4. Je n'arrive pas à faire ce code (j'essaie d'apprendre VBA tout seul)

Merci pour votre aide
A voir également:

5 réponses

SVP aidez-moi..
0
Je pense avoir amélioré le programme, mais je n'arrive toujours pas au résultat voulu:

Sub CommandButton1_Click()

Dim s As String
Dim c As String
Dim p As String
Dim calc As String

s = TextBox1
c = TextBox2
p = TextBox3

calc = s + p - c

TextBox4.Text = calc


End Sub

Que dois-je faire?
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
19 nov. 2010 à 18:13
Bonjour,

tes textbox se trouvent où? sur une feuille ou un userform?

les text box renvient du texte et non des nombres

évite les varaiables à un caractère; donne leur plutôt un nom court mais explicite; un bon code est celui qui a une maintenance facile


voici ce que ca pourrait donner dans un userform

Sub CommandButton1_Click()
Dim s As Double
Dim c As Double
Dim p As Double
Dim calc As Double

s = CDbl(TextBox1)
c = CDbl(TextBox2)
p = CDbl(TextBox3)

calc = s + p - c
TextBox4 = calc

End Sub


en déclration suivant le cas tu peux déclarer en byte, integer, long, single ou double. dans l'aide, tu as les fonctions de conversion
0
Génial!! Merci beaucoup. Mes textbox se trouvent dans un userform. Une dernière chose, CDbl c'est une fonction pour sélectionner la valeur dans une textbox?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
19 nov. 2010 à 18:50
Cdbl convertit une expression en un nombre de type double
donc les nombres que tu rentres dans le txtbox sont renvoyées sous la forme d'un texte:"3,14159"
Cdbl("3,14159") renvoie le nombre 3,14159
comme je te l'ai écrit regarde dans l'aide
0