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 :

questionnaire calcul vba [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 019
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 019
    Par défaut questionnaire calcul vba
    Bonjour,

    J'ai fais un questionnaire avec plusieurs questions sur une feuille excel.
    chaque question à trois réponse possible (oui=1, non=0 et je sais pas=0)
    Ensuite je fais un total du résultat, par exemple 10 oui = 10 points...
    Le seul petit problème c'est que certaines questions doivent avoir un coefficient donc je ne sais pas comment gérer ça?
    Quelqu'un peut m'aider, merci



    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    Sub test()
     
     
    Dim i As Integer
    Dim score As Integer
     
    With Sheets("Attitude_général")
     
    nbcasecoche = .OptionButtons.Count
     
    For i = 1 To nbcasecoche
      If .OptionButtons(i) = xlOn Then
        score = score + 1
        i = i + 2
      ElseIf .OptionButtons(i + 1) = xlOn Then
        score = score + 0
        i = i + 2
      ElseIf .OptionButtons(i + 2) = xlOn Then
        score = score + 0
        i = i + 2
      End If
     
    Next i
     
     
    End With
     
     
    Sheets("Attitude").Cells(34, 12).Value = score
     
     
    End Sub

  2. #2
    Invité
    Invité(e)
    Par défaut
    bonjour,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub test()
        Dim i As Integer
        Dim score As Integer
        With Sheets("Attitude_général")
            For i = 1 To .OptionButtons.Count Step 3
              score = score + (.OptionButtons(i) * coefficient)
            Next i
        End With
        Sheets("Attitude").Cells(34, 12).Value = Abs(score)
    End Sub
    ça à l'air compliqué de trouver la bonne réponse?

  3. #3
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 019
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 019
    Par défaut questionnaire calcul vba
    Merci,je sens un peu d'ironie là, non?? LOL

    Et c'est presque ça mais le truc en fait, c'est que sur un questionnaire, il y a par exemple 10 questions ( avec oui, non, je sais pas).
    Mais en fait je voudrais mettre un coeff que sur certaines questions...par exemple la question 3, la question 6 et la question 9...
    Je sais pas si je suis clair...?

  4. #4
    Invité
    Invité(e)
    Par défaut
    Question Repons1 Repons2 Repons3 coefficient
    Question1 1 0 0 1
    Question2 0 1 0 1
    Question3 0 0 1 1
    Question4 0 1 0 6
    Question5 0 0 1 9
    Question6 1 0 0 1
    Question7 1 0 0 1
    Question8 0 0 1 5
    Question9 0 1 0 1
    Question10 1 0 0 9
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub test()
        Dim i As Integer
        Dim R As Range
        Dim score As Integer
        Set R = Sheets("ResultatQuestions").Range("B2:D11")
        With Sheets("Attitude_général")
            For i = 1 To .OptionButtons.Count
              score = score + (.OptionButtons(i) * R(i) * Sheets("ResultatQuestions").Cells(R(i).Rows, "c"))
            Next i
        End With
        Sheets("Attitude").Cells(34, 12).Value = Abs(score)
    End Sub
    autre solution
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub test()
        Dim i As Integer
        Dim score As Integer, coefficient(), Icoeff As Integer
       'coefficient = Array(Question0,Question1,Question2,Question3,Question4,Question5,Question6,Question7,Question8,Question9,Question10)
        coefficient = Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
        With Sheets("Attitude_général")
            For i = 1 To .OptionButtons.Count Step 3
                Icoeff = Icoeff + 1
              score = score + (.OptionButtons(i) * coefficient(Icoeff))
            Next i
        End With
        Sheets("Attitude").Cells(34, 12).Value = Abs(score)
    End Sub
    Dernière modification par Invité ; 24/06/2015 à 15h21.

  5. #5
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 019
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 019
    Par défaut questionnaire calcul vba
    J'ai déjà fais toute la présentation et je souhaite rester sur les cases à cocher (option)....

  6. #6
    Invité
    Invité(e)
    Par défaut
    regarde ça on est sur les casse a cochées, je t'ai toujours proposé un code sur le cases à cochées!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub test()
        Dim i As Integer
        Dim score As Integer, coefficient(), Icoeff As Integer
    'pour chaque QuestionX on dit le coefficient valeur min toujours 1  
       'coefficient = Array(Question0,Question1,Question2,Question3,Question4,Question5,Question6,Question7,Question8,Question9,Question10)
        coefficient = Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
        With Sheets("Attitude_général")
            For i = 1 To .OptionButtons.Count Step 3
                Icoeff = Icoeff + 1
              score = score + (.OptionButtons(i) * coefficient(Icoeff))
            Next i
        End With
        Sheets("Attitude").Cells(34, 12).Value = Abs(score)
    End Sub

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

Discussions similaires

  1. [XL-2007] Résultats Calcul VBA dans cellule Excel
    Par Estaque3394 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 20/10/2012, 19h21
  2. [AC-2002] Calcul VBA sur le résultat de 2 SQL
    Par wushu29 dans le forum VBA Access
    Réponses: 7
    Dernier message: 09/04/2010, 11h39
  3. Calcul vba dans feuille de données
    Par KGUTBM dans le forum VBA Access
    Réponses: 4
    Dernier message: 07/07/2008, 11h53
  4. Questionnaire Excel/VBA avec "parties" répétables
    Par DeaD78 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 04/06/2008, 14h43
  5. [Calculs VBA] Test de condition sous VBA
    Par guen dans le forum VBA Access
    Réponses: 8
    Dernier message: 28/11/2007, 17h52

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