trier sur des critères notés de 1 à 9

Dominik

XLDnaute Nouveau
Bonjour,

J'ai joint un fichier pour expliquer ce que j'aimerais :)
Il y a sans doute du sommeprod, mais j'ai pas le niveau suffisant pour m'en sortir :(
Merci d'avance
 

Pièces jointes

  • Exemple.xls
    9.5 KB · Affichages: 35
  • Exemple.xls
    9.5 KB · Affichages: 37
  • Exemple.xls
    9.5 KB · Affichages: 35

CHALET53

XLDnaute Barbatruc
Re : trier sur des critères notés de 1 à 9

Bonjour,

si tu attends une centaine de réponse : prévoir un récapitulatif où tu cumules pour chaque item la note (qui va de 1 à 9 : fonction de l'importance)
En final tu fais un tri ascendant
Exemple avec deux questionnaires
a+
 

Pièces jointes

  • Dominik.xls
    29 KB · Affichages: 41

job75

XLDnaute Barbatruc
Re : trier sur des critères notés de 1 à 9

Bonjour Dominik, salut CHALET53 :)

Sur Excel 2003 il n'y a pas la place pour placer les 100 tableaux de réponses vers la droite.

Alors les placer vers le bas comme dans le fichier joint.

Et formule en A4 pour le récapitulatif, à tirer vers le bas :

Code:
=SOMME.SI(B$18:B$3000;B4;A$18:A$3000)/NB.SI(B$18:B$3000;B4)
Elle donne la moyenne des réponses.

A la fin, pour trier le tableau A4:F12, il faut défusionner les cellules fusionnées du tableau.

Edit : autre solution avec cette formule matricielle en A4 :

Code:
=MOYENNE(SI(B$18:B$3000=B4;A$18:A$3000))
A valider par Ctrl+Maj+Entrée.

Fichier (2).

A+
 

Pièces jointes

  • Exemple(1).xls
    27.5 KB · Affichages: 40
  • Exemple(1).xls
    27.5 KB · Affichages: 42
  • Exemple(1).xls
    27.5 KB · Affichages: 43
  • Exemple(2).xls
    27.5 KB · Affichages: 38
  • Exemple(2).xls
    27.5 KB · Affichages: 37
  • Exemple(2).xls
    27.5 KB · Affichages: 35
Dernière édition:

job75

XLDnaute Barbatruc
Re : trier sur des critères notés de 1 à 9

Bonjour Dominik, le forum,

On peut aussi créer une feuille pour chaque réponse, c'est une pointure au dessus.

On utilisera alors cette fonction macro dans Module1 (Alt+F11) :

Code:
Function MOY(txt As String) As Double
'calcule les moyennes
Dim w As Worksheet, ref As Range, n As Byte
Application.Volatile
For Each w In Worksheets
  If w.Name <> "Récapitulatif" Then 'à adapter
    Set ref = w.Cells.Find(txt, , xlValues, xlWhole)
    If Not ref Is Nothing Then
      If Val(ref.Offset(, -1).Text) Then
        n = n + 1
        MOY = MOY + ref.Offset(, -1)
      End If
    End If
  End If
Next
MOY = MOY / n
End Function
Formule en A4 de la feuille Récapitulatif, à tirer vers le bas :

Code:
=MOY(B4)
Fichier (3).

A+
 

Pièces jointes

  • Exemple(3).xls
    41 KB · Affichages: 34
  • Exemple(3).xls
    41 KB · Affichages: 36
  • Exemple(3).xls
    41 KB · Affichages: 38

job75

XLDnaute Barbatruc
Re : trier sur des critères notés de 1 à 9

Re,

Pour finir, une amélioration permettant de repérer les erreurs :

Code:
Function MOY(txt As String) As Variant
'calcule les moyennes
Dim w As Worksheet, ref As Range, test As Boolean, n As Byte
Application.Volatile
On Error Resume Next
For Each w In Worksheets
  If w.Name <> "Récapitulatif" Then 'à adapter
    Set ref = w.Cells.Find(txt, , xlValues, xlWhole)
    If Not ref Is Nothing Then
      If ref.Offset(, -1) <> "" Then
        'test pour repérer les erreurs
        test = ref.Offset(, -1) < 1 Or ref.Offset(, -1) > 9
        If test Or Err Then MOY = "Voir " & w.Name: Exit Function
        n = n + 1
        MOY = MOY + ref.Offset(, -1)
      End If
    End If
  End If
Next
MOY = MOY / n
End Function
Fichier (4).

A+
 

Pièces jointes

  • Exemple(4).xls
    55.5 KB · Affichages: 33
  • Exemple(4).xls
    55.5 KB · Affichages: 35
  • Exemple(4).xls
    55.5 KB · Affichages: 34

Discussions similaires

Réponses
10
Affichages
572
Réponses
9
Affichages
555

Statistiques des forums

Discussions
312 492
Messages
2 088 925
Membres
103 984
dernier inscrit
maliko67