classement =f(nbre de pts,diff de buts) [Resolu]

classement =f(nbre de pts,diff de buts) [Resolu] - VB/VBA/VBS - Programmation

Marsh Posté le 04-03-2009 à 16:30:25    

bonjour a tous,
 
voila je voudrais faire un classement
 
j'ai deux tableaux avec 20 equipes et plusieurs journees de championnat
le premier tableaux comportent le nombre de points ( en cumul)
 
                    j1       j2        j3
equipe1         3        4        7
equipe2         0        1        2
equipe3         1        1        2
etc...
 
et le deuxieme
la difference de points
 
                    j1       j2        j3
equipe1         +2        +2        +2
equipe2         -1        1        1
equipe3         0        0        2
etc...
 
ce que je voudrais faire c'est une macro que me fasse le classement. je dois obtenir (en prenant en compte le nombre de points et la difference de but) le tableau suivant
 
                    j1       j2        j3
equipe1         1        1       1
equipe2         3        2       3
equipe3         2        3        2
etc...
 
est ce que quelqu'un saurait comment si prendre ? je voudrais "l'architecture" generale de la macro
 
ce serait sur vba excel 2003
 
merci de votre aide
a+


Message édité par 86vomito33 le 16-03-2009 à 15:26:24
Reply

Marsh Posté le 04-03-2009 à 16:30:25   

Reply

Marsh Posté le 16-03-2009 à 15:26:11    

au final j'ai pas reussi a le faire par macro mais je suis passe par le tri de Excel
 
ce qui donne
 
Sub affecterplace()
Columns("B:B" ).Select
Range("B2" ).Activate
Selection.Insert Shift:=xlToRight
k = 0
For i = 4 To 152 Step 4
k = k + 1
    Sheets("Tamponbis" ).Select
    Range("C2:EY22" ).Select
    Selection.Sort Key1:=Cells(3, i), Order1:=xlDescending, Key2:=Cells(3, i + 3) _
        , Order2:=xlDescending, Header:=xlGuess, OrderCustom:=1, MatchCase:= _
        False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal, DataOption2 _
        :=xlSortNormal
    For ii = 3 To 22 Step 1
        plc = Sheets("Tamponbis" ).Cells(ii, 1)
        eq = Sheets("Tamponbis" ).Cells(ii, 3)
            For iii = 4 To 23 Step 1
            Sheets("Evolution" ).Select
            If Trim(Sheets("Evolution" ).Cells(iii, 2)) = Trim(eq) Then
            ieq = iii
            GoTo suite1
            End If
            Next iii
suite1:
        Sheets("Evolution" ).Cells(ieq, k + 2) = plc
    Next ii
Next i
End Sub


Message édité par 86vomito33 le 16-03-2009 à 15:27:15
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed