[excel] textbox champs calculé

Résolu
zook Messages postés 40 Statut Membre -  
zook Messages postés 40 Statut Membre -
Bonjour à tous,
J'ai créé un formulaire de saisie à faire remplir par un tiers.
J'ai 2 textbox (qui doivent recevoir des données numériques),
et ces 2 textbox doivent se sommer automatiquement dans une 3ème textbox.

Mon 1er problème est de convertir en numérique mes 3 textbox.
Mon 2ème est d'insérer le calcul dans la 3ème textbox.

Celui-ci qui se trouve dans un code attaché à un bouton validation marche:
textbox3.Text = CInt(CSng(textbox1.Text) + CSng(textbox2.Text))

mais j'aimerai que le total s'effectue avant la validation, lorsque l'on saisie les données
et que l'on clique ailleurs.

Merci beaucoup pour votre aide, j'en ai vraiment besoin!!
Zou
Configuration: Windows XP
Internet Explorer 6.0

4 réponses

  1. zook Messages postés 40 Statut Membre 6
     
    Comme je suis la règle du site, je vais récapituler la solution :

    Pour faire la somme de 2 textbox dans une 3ème et que le résultat apparaisse automatiquement en sortant des textbox :

    Private Sub TextBox1_AfterUpdate()
    TextBox3.Value = Val(TextBox1.Value) + Val(TextBox2.Value)
    End Sub

    Private Sub TextBox2_AfterUpdate()
    TextBox3.Value = Val(TextBox1.Value) + Val(TextBox2.Value)
    End Sub


    Ne pas oublier d'insérer ce code dans les 2 textbox!!

    Pour exporter les résultats dans une feuille excel sous format numérique:

    Val(TextBox1.Value)
    Val(TextBox2.Value),...


    Et toutes ces infos grâce à LePierre
    Merci beaucoup à toi, tu m'as fait gagner un temps précieux
    et surtout facillité le programme. De toute façon je n'aurai jamais trouvé toute seule!!

    Bonne journée
    6
  2. LePierre Messages postés 249 Statut Membre 338
     
    bonjour

    en supposant que tes TextBox sont :
    TextBox1 : entrée 1ère valeur
    TextBox2 : entrée 2ème valeur
    TextBox3 : recevant le calcul
    ajoute le code :

    Private Sub TextBox1_AfterUpdate()
    TextBox3.Value = Val(TextBox1.Value) + Val(TextBox2.Value)
    End Sub

    Private Sub TextBox2_AfterUpdate()
    TextBox3.Value = Val(TextBox1.Value) + Val(TextBox2.Value)
    End Sub

    à plus
    1
  3. zook Messages postés 40 Statut Membre 6
     
    J'ai oublié de cocher problème résolu, voir message précédent
    1
  4. zook Messages postés 40 Statut Membre 6
     
    C'est géant...merci beaucoup...vraiment!!!

    Il ne me reste plus qu'à trouver la solution pour convertir
    les textbox en numérique quand les données de celles-ci
    sont transférées dans une feuille excel.
    0
    1. LePierre Messages postés 249 Statut Membre 338
       
      bonjour

      utilise la fonction Val()
      tu peux t'inspirer de l'exemple ci dessous :

      Sub test()
      UserForm1.Show
      x = Val(UserForm1.TextBox3.Value)
      Cells(1, 1).Value = UserForm1.TextBox3.Value
      Unload UserForm1
      End Sub

      tu récupère dans la variable x une valeur numérique avec Val()
      et normalement tu récupères également une valeur dans la cellule A1

      à plus
      0