IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

somme de plusieurs box [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 82
    Par défaut somme de plusieurs box
    Bonjour le forum

    Me revoici d'avant un nouveau probleme

    j'ai 3 groupes de 2 listbox dans lesquel je rentre des chiffres
    c'est 2 chiffres se multiplie (ca j'ai trouver comment faire)

    Ce que je voudrais c'est que la sommes de c'est 3 groupes (donc somme des 3 multiplications) s'affiche dans une textbox et que cela affiche un message d'erreur si la somme depasse 10

    Merci pour votre aide

  2. #2
    Membre Expert Avatar de rvtoulon
    Homme Profil pro
    Agent Technique
    Inscrit en
    Mars 2009
    Messages
    1 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Agent Technique
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 042
    Par défaut
    Bjr Crashfire
    Ce que je voudrais c'est que la sommes de c'est 3 groupes (donc somme des 3 multiplications) s'affiche dans une textbox et que cela affiche un message d'erreur si la somme depasse 10
    Ou se trouve ce résultat, dans une variable, dans une cellule...

    Perso je mettrais le résultat dans une variable que j'appellerais "resultat"
    et je mettrais ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    'si resultat est inferieur ou egal à 10 alors
    if resultat <= 10 then
    'j'affiche le resultat dans le textbox
    textbox1.value = resultat
    'sinon message d'erreur
    else 
    msgbox "Ton message d'erreur"
    end if
    j'ai fais çà vite sans tester pas le temps maintenant, vois comment l'adapter à ton cas
    @+

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 82
    Par défaut
    j'ai essayer de code mais rien ne change

    Voici le code de la textbox que j'ai essayé d'adapter

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub TextBox7_Change()
    'si resultat est inferieur ou egal à 10 alors
    If resultat <= 10 Then
    'j'affiche le resultat dans le textbox
    resultat = CDbl(Texttportion.Value) + CDbl(texttsport.Value) 'définit la variable resultat
    TextBox7.Value = resultat
    'sinon message d'erreur
    Else
    MsgBox "Ton message d'erreur"
    End If
    End Sub
    Les chiffres sont entre directement dans la userform via d'autre textbox

  4. #4
    Membre Expert Avatar de rvtoulon
    Homme Profil pro
    Agent Technique
    Inscrit en
    Mars 2009
    Messages
    1 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Agent Technique
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 042
    Par défaut
    Bjr,
    le code que tu as mis démarrera lorsque un changement interviendra dans le textox7.
    Tu dois déclaré ta variable et l'initializer avant d'écrire ta condition, sinon comment savoir que le resultat est <=10?

    Le code ci dessous fera le calcul si tu double click sur le textbox7.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Private Sub TextBox7_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
    dim resultat as integer
    'définit la variable resultat
    resultat = CDbl(Texttportion.Value) + CDbl(texttsport.Value) 
    'si resultat est inferieur ou egal à 10 alors
    If resultat <= 10 Then
    'j'affiche le resultat dans le textbox
    TextBox7.Value = resultat
    'sinon message d'erreur
    Else
    MsgBox "Ton message d'erreur"
    End If
    End Sub
    @+

  5. #5
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 82
    Par défaut
    il me met une erreur en surlignent
    resultat = CDbl(Texttportion.Value) + CDbl(texttsport.Value)


    Y aurait il un moyen pour que cela s'affiche automatiquement?

  6. #6
    Membre Expert Avatar de rvtoulon
    Homme Profil pro
    Agent Technique
    Inscrit en
    Mars 2009
    Messages
    1 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Agent Technique
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 042
    Par défaut
    Bjr,
    je ne connaissais pas la fonction "CDbl" et un petit coup d'oeil dans l'aide d'excel dit ceci :
    CDbl, fonction, exemple

    Cet exemple utilise la fonction CDbl pour convertir une expression en valeur de type Double.
    donc si tu veux un resultat avec des décimales, dans le code change
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim resultat as Integer
    par .

    Je ne pense pas que l'erreur vienne de là.
    il me met une erreur en surlignent
    resultat = CDbl(Texttportion.Value) + CDbl(texttsport.Value)
    Vérifie que les noms entre parenthèse soient correctement orthographié, c une idée.
    Ce sont des noms de controles je suppose, quel type de controles?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Fonction vba somme de plusieurs champs
    Par Greg84 dans le forum Access
    Réponses: 4
    Dernier message: 09/08/2006, 15h16
  2. somme sur plusieurs lignes d'un dbgrid
    Par pierrot67 dans le forum Bases de données
    Réponses: 11
    Dernier message: 11/07/2006, 10h24
  3. somme entre plusieurs tables
    Par copin dans le forum Access
    Réponses: 1
    Dernier message: 05/06/2006, 13h03
  4. [CR] probleme de somme sur plusieurs pages
    Par d@rthwing dans le forum SAP Crystal Reports
    Réponses: 9
    Dernier message: 26/08/2005, 14h31
  5. [math] somme de plusieurs vecteurs à 3 dimensions
    Par teska dans le forum Mathématiques
    Réponses: 5
    Dernier message: 04/06/2003, 21h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo