Etape par etape

Bonsoir

jai reformuler ma question

on va y aller par etape

Etape par etape

Etape 1: classer les chiffres qu'il y a en B13 a I13 du plus grand au plus petit

et mettre le resultat en B16 a I16

PS/chaque somme qu'il y a en B13/I13 et assosier a un chiffre B12/I12

et en classant du plus grand au plus petit c'est les chiffres qu'il y a en B12/I12

qu'il mettra en B16/I8

26reclasser.xlsx (10.25 Ko)

Bonsoir,

Pas très clair tout ça

angel09 a écrit :

Etape 1: classer les chiffres qu'il y a en B13 a I13 du plus grand au plus petit

et mettre le resultat en B16 a I16

une macro qui devrait correspondre à ce que tu attends

Sub test()
  With Range("B16:I16")
    Range("B13:I13").Copy
    .PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
    .Sort Key1:=Range("B16"), Order1:=xlDescending, Header:=xlGuess _
    , OrderCustom:=1, MatchCase:=False, Orientation:=xlLeftToRight, DataOption1:=xlSortNormal
    Application.CutCopyMode = False
  End With
End Sub
angel09 a écrit :

PS/chaque somme qu'il y a en B13/I13 et assosier a un chiffre B12/I12

et en classant du plus grand au plus petit c'est les chiffres qu'il y a en B12/I12

qu'il mettra en B16/I8

Là, je n'ai rien compris... peux tu expliquer plus précisément ou mettre à coter de ton tableau le résultat voulu ?

Le sujet ressemble étrangement à ce post...

Bon d'après ce que j'ai pu tenter de déchiffrer

avec cette macro, oubli la première je pense que ce n'est pas ce que tu attendais

Sub Test2()
  Application.ScreenUpdating = False
    Range("B12:I13").Copy
    Range("B14").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("B14:I15").Sort Key1:=Range("B15"), Order1:=xlDescending, Header:=xlGuess _
        , OrderCustom:=1, MatchCase:=False, Orientation:=xlLeftToRight, _
        DataOption1:=xlSortNormal
    Range("B14:I14").Copy
    Range("B16:I16").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("B14:I15").ClearContents
End Sub

Voir le fichier ci-joint pour le test (il ne doit rien avoir dans la plage B14:I15).

cool c'est ce que je voulait

milles merci voila la 2éme etape

ci joint les explication avec le fichier joint

à tester...

a noter qu'il n'est plus nécessaire de ne rien écrire sur la plage B14:I15 mais par contre il faute qu'il n'y ai rien dans la plage B26:I30

Sub Test2()
  Application.ScreenUpdating = False
  'étape 1
    Range("B12:I13").Copy
    Range("B26").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("B26:I27").Sort Key1:=Range("B27"), Order1:=xlDescending, Header:=xlGuess _
        , OrderCustom:=1, MatchCase:=False, Orientation:=xlLeftToRight, _
        DataOption1:=xlSortNormal
    Range("B26:I26").Copy
    Range("B16:I16").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("B26:I27").ClearContents
  'étape 2
    Range("B16:I20").Copy
    Range("B26").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
    Range("B26:I30").Sort Key1:=Range("B30"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlLeftToRight, _
        DataOption1:=xlSortNormal
    Range("B26:I26").Copy
    Range("B24").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
    Range("B26:I30").ClearContents
End Sub

milles merci mai il y a un souci

je doit pouvoir effacer LE CONTENUE et ecrire d'autre chiffre

mais quand jefface tout

B17/B18 a I17/I18

en B24 a I24 les chiffres reste c'est normal?

Tel qu'est conçu le code oui, c'est normal, vous n'aviez pas précisé...

A tester...

merci trot fort

milles merci bonne journée

Rechercher des sujets similaires à "etape"