Classement par ordre croissant

bonjour à toutes et à tous !

j'ai encore besoin de vos lumières pour le cas suivant :

sur un fichier, nous avons 2 onglets : l'un nommé coutants et l'autre offre

l'objectif est d'automatiser le classement par ordre croissant sur l'offre sans modifier l'ordre sur l'onglet coutant

enfin, le top du top serait d'ajouter automatiquement dans la colonne position compagnie la position de chaque compagnie (ex 1 = 1ère, 2 = 2ième ect...)

l'idéal serait de le faire sur les deux onglets (attention ! l'ordre actuel des compagnies maritimes de l'onglet coutant ne doit pas être modifié)

merci de vos commentaires avisés

bonne journée

ps : en pj un fichier à titre d'exemple

98chb44-14062011.xls (19.00 Ko)

Bonjour,

l'objectif est d'automatiser le classement par ordre croissant sur l'offre sans modifier l'ordre sur l'onglet coutant

L'ordre croissant doit se faire en fonction de quelle colonne ?

Amicalement

bonjour Dan

effectivement, tu as raison, j'ai oublié l'élément primoridial : le tri doit se faire par la colonne E

ps : la colonne position compagnie serait en colonne G

-- 14 Juin 2011, 13:04 --

re bonjour le forum

je me permet de relancer le post avec les informations complémentaires ci dessous :

sur le fichier en pj, nous avons 2 onglets : l'un nommé coutants et l'autre offre

l'objectif est d'automatiser le classement par ordre croissant sur l'offre sans modifier l'ordre sur l'onglet coutant, le classement se fait par pol et ensuite par le tarif repris en colonne E sur l’onglet offre

enfin, le top du top serait d'ajouter automatiquement dans la colonne position compagnie la position de chaque compagnie (ex 1 = 1ère, 2 = 2ième ect...)

l'idéal serait de le faire sur les deux onglets (attention ! l'ordre actuel des compagnies maritimes de l'onglet coutant ne doit pas être modifié)

si cela n'est pas possible, dites le moi !!

63chb44-14062011.xls (19.50 Ko)

bonsoir,

Pas compris la 2ème partie (position)

Sub ClassementOffre()
Dim Lg%, i%
    Application.ScreenUpdating = False
    On Error Resume Next
        Application.DisplayAlerts = False
            Sheets("offre").Delete
        Application.DisplayAlerts = True
    On Error GoTo 0

        Sheets("coutants").Copy Before:=Sheets(2)
    With Sheets(2)
        .Name = "offre"
        Lg = .Range("a65536").End(xlUp).Row
            For i = 2 To Lg
                .Cells(i, "d") = .Cells(i, "d") + 50
                .Cells(i, "e") = .Cells(i, "e") + 100
                .Cells(i, "f") = .Cells(i, "f") + 125
            Next i
        '--- tri ---
        .Range("a1:g" & Lg).Sort _
        Key1:=.Range("a1"), Order1:=xlAscending, _
        Key2:=.Range("e1"), Order2:=xlAscending, _
            Header:=xlYes, OrderCustom:=1, MatchCase:=False, _
            Orientation:=xlTopToBottom
        '---
        .DrawingObjects.Delete
        .Activate
    End With
End Sub

Amicalement

Claude

123chb44-offre.zip (16.84 Ko)
Rechercher des sujets similaires à "classement ordre croissant"