Fonction Excel

trigunfusion Messages postés 159 Statut Membre -  
 rafc -
Bonjour,

Je cherche a faire une fonction Excel un peu spéciale :

J'ai une base de donnée :

Classe Note
1 5
1 9
2 9
2 9
2 2
3 1
3 1
3 6
4 2
4 2

Je souhaite inscrire dans une autre colonne le maximum de chaque classe:

Classe Note max
1 ?
2 ?
3 ?
4 ?

Pouvez-vous m'aider?

Merci d'avance.


A voir également:

5 réponses

Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 442
 
Bonjour
à adapter:
votre liste de N° en colonne A, vos notes en colonne B vos références en colonne C de C1 à C4
en D1:
=MAX(SI(A:A=C1;B:B))
formule matricielle à entrer en maintenant les touches ctrl+shift enfoncées pour qu'elle se retrouve entre crochets.
Tirez de D1 à D4
crdlmnt

Demandons nous si nous ne sommes pas seuls à comprendre ce que l'on explique?
0
trigunfusion Messages postés 159 Statut Membre 28
 
Bonjour,

en fait, mon pb est bcp plus complexe que ca.

en Virtual basic, il faudrait que je transcrive le cheminement suivant :
- a partir du fichier auquel je veux actualiser les données ("fichier de synthése.xls"), ouvrir un autre fichier : Workbooks.Open Filename:="D:\Fichier d'analyse.xls"
- sélectionner la bonne feuille : Sheets("Etude").Select
filtrer la colonne E : Selection.AutoFilter Field:=4, Criteria1:="1"
- trouver le maximum de cette liste de la colonne K

Le pb est aussi que je doit comparer ces maximum à 2,3,4,5 ou plus autres fichiers dont je trouverais les maximum par cette meme démarche aussi

Enfin, ne copier que les maximum des maximum (il peut y avoir 1 ou plusieurs lignes) dans mon "fichier de synthèse.xls" case D9.

Je ferait ensuite le même code pour les autres critères.
0
rafc
 
salut,
voici le code pour avoir le maximum de 2 lignes, je suppose que les 2 lignes ont le même
longueur.....
------------------------------------------------------------------------------------
'petit function pour avoir le max de 2 nombres
Function maxi(ByVal a, b As Integer) As Integer
If a >= b Then
maxi = a
Else
maxi = b
End If
End Function
-----------------------------------------------------------------------------------------------
Sub recherche()
Dim i, temp As Integer
i = 0
Do
i = i + 1
'je garde la valeur maximal dans une variable temp
temp = maxi(temp, maxi(Cells(i, 1), Cells(i, 2)))
'condition " si la cellule ne contiens plus de valeurs, alors je copy la valeur max et je sort
If Cells(i, 1) = "" Then
Cells(1, 3).Value = temp
Exit Sub
End If
Loop
End Sub
----------------------------------------------------------------------------------------------------
après si tu veux le faire pour chaque feuille c#est pas la grand chose , tu dois créer un
for i = 1 to ( numero de pages que tu as)
if i = 1 then
worksheets("name1").active
elseif i= 2 then
worksheets("name2").active
etc

j'espère t'avoir aider un peu

courage
0
rafc
 
ahh
je supose que tu as:
1 5 voici le resultat!! 67
3 43
4 5
5 1
6 12
7 11
67 23
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Rafcor Messages postés 6 Statut Membre
 
c est trop facil

tu connait vba???

tu fait un boucle et voila

comme ca c est sur

si t interesse je peu te filer le code
-1
trigunfusion Messages postés 159 Statut Membre 28
 
Bonjour,

en fait, mon pb est bcp plus complexe que ca.

en Virtual basic, il faudrait que je transcrive le cheminement suivant :
- a partir du fichier auquel je veux actualiser les données ("fichier de synthése.xls"), ouvrir un autre fichier : Workbooks.Open Filename:="D:\Fichier d'analyse.xls"
- sélectionner la bonne feuille : Sheets("Etude").Select
filtrer la colonne E : Selection.AutoFilter Field:=4, Criteria1:="1"
- trouver le maximum de cette liste de la colonne K

Le pb est aussi que je doit comparer ces maximum à 2,3,4,5 ou plus autres fichiers dont je trouverais les maximum par cette meme démarche aussi

Enfin, ne copier que les maximum des maximum (il peut y avoir 1 ou plusieurs lignes) dans mon "fichier de synthèse.xls" case D9.

Je ferait ensuite le même code pour les autres critères.
0