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

IHM Discussion :

calcul du nb de 10 dans plusieurs Txtbox au sein d'un formulaire [AC-2007]


Sujet :

IHM

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Novembre 2013
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2013
    Messages : 116
    Points : 89
    Points
    89
    Par défaut calcul du nb de 10 dans plusieurs Txtbox au sein d'un formulaire
    Bonjour à tous,

    J'ai un petit souci et j'ai besoin de votre aide.

    J'ai une base de données avec des clients pratiquant une activité sportive.
    Chaque client peut enregistrer 10 scores.
    J'enregistre ces scores dans plusieurs Txtbox au sein d'un table (Tblinscr).
    Je fais cette enregistrement manuellement à l'aide d'un formulaire.
    Ces Txtbox sont txts1,txts2.....Etc. jusqu’à txts10.

    Chacune de ces Txtbox contiennent donc un score qui va de 0 à 10.
    j'ai ensuite créer au sein de cette même table (Tblinscr), 10 txtbox qui (j'aimerais) calcules puis enregistrent les infos suivantes:
    le nb de 10 dans Txtnb10
    le nb de 9 dans Txtnb9
    ....etc jusqu'à Txtnb0

    Je saisie manuellement les 10 scores de mes clients et j'aimerais que le calcul se fasse à chaque saisie.
    Ensuite pour l'enregistrement de ces données, il faudrait qu'il se fasse quand je quitte le formulaire.

    Le but est que je sache, pour chaque clients (et donc pour chaque enregistrements et non au total sur ma table), combien il à fait de 10 de 9 de 8 ...ETC..

    Exemple:
    Client 1 fait les scores suivants: 10 . 10 . 10 . 8 . 9 . 9 . 4 . 3 . 8 . 10
    Du coup:
    txtnb10 = 4 (car il à eut 4 fois un 10)
    txtnb9 = 2
    txtnb8 = 2
    txtnb7 = 0
    txtnb6 = 0

    et ceci jusqu'à txtnb0 = 0

    Chaque txtbox (txtnb10) va compter le nb de "10" dans les autres txtbox (txts1,txts2....)!!!


    Merci pour idées et votre aide.

  2. #2
    Membre expert
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2012
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2012
    Messages : 1 874
    Points : 3 461
    Points
    3 461
    Par défaut
    Bonjour nounous54,

    Tu parles de textebox, donc cela se passe directement dans ton formulaire? Si c'est le cas voici une routine qui fera l'affaire. L’événement est déclenché par le bouton "btnCalcul". Il n'y a aucune vérification (dans mon exemple), donc tous les champs doivent avoir un nombre sinon ça ne fonctionnera pas.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Private Sub btnCalcul_Click()
     
        Dim i As Integer, R As Integer
     
        'Première boucle mets les champs à 0
        For i = 0 To 10
            Me("txtnb" & i) = 0
        Next i
        'Deuxième boucle inscrit le nombre dans le champ désiré
        For i = 1 To 10
            R = Me("txts" & i)
            'Addition du nombre selon le résultat
            Me("txtnb" & R) = Me("txtnb" & R) + 1
        Next
     
    End Sub
    Bonne chance

  3. #3
    Chroniqueur Actualités
    Avatar de Michael Guilloux
    Homme Profil pro
    Data Consultant
    Inscrit en
    Juillet 2013
    Messages
    2 939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Data Consultant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2013
    Messages : 2 939
    Points : 88 209
    Points
    88 209
    Billets dans le blog
    2
    Par défaut 2 tables reliées
    Salut, Je corrige mon idée qui était très mal formulée
    1-Crée une table TblClient(IDClient, NomClient) et une table TblRELScoreClient(ID, IDClient, Score)
    2-Ensuite, crée une requête de regroupement qui compte le nombre de type de score à partir de TblRELScoreClient en ajoutant un champ calculé NbScore
    3-Crée un formulaire FrmClient et un sous-formulaire FrmScoreClient qui aura pour source la requête.
    Les 2 forms seront liées par champ père IDClient et champ fils IDClient.
    Je crois c'est bien dit de cette manière

  4. #4
    Membre régulier
    Homme Profil pro
    Inscrit en
    Novembre 2013
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2013
    Messages : 116
    Points : 89
    Points
    89
    Par défaut
    Salut.

    Robert1957 je te remercie, ta solution fonctionne super bien...

    Mille merci.

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

Discussions similaires

  1. [XL-2010] Problème pour insérer un calcul dans plusieurs cellules par macro
    Par Teva29 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 26/11/2014, 18h11
  2. Réponses: 11
    Dernier message: 13/04/2013, 15h25
  3. [XL-2003] Recherche automatique dans plusieurs feuilles de calcul
    Par NEC14 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 19/02/2013, 08h18
  4. Supprimer des lignes dans plusieurs feuilles de calcul
    Par djepi dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 11/10/2011, 15h30
  5. Calculs avec référence dans plusieurs colonnes
    Par sat478 dans le forum Excel
    Réponses: 1
    Dernier message: 24/11/2010, 17h35

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