OVH Cloud OVH Cloud

Classer un tableau sous VBA

1 réponse
Avatar
Globulus02
Bonjour
Sous excel2003, j'ai un tableau que je met a jour avec différente procédure
ou instruction sous VBA depuis un UserForm.
Lorsque je veux réorganiser mon tableau afin d'en supprimer les doublons
avec :

Sheets("BD1").Select
Range("A4", Range("A4").End(xlDown)).Select
Selection.Sort Key1:=Range("A4"), Order1:=xlAscending,
Key2:=Range("F4") _
, Order2:=xlAscending, Key3:=Range("K4"), Order3:=xlAscending,
Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False,
Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal, DataOption2:=xlSortTextAsNumbers,
DataOption3 _
:=xlSortNormal

Il ne me classe pas mon tableau alors qu'appeler la même Macro depuis la
feuille fonctionne!?
Ou me suis je trompé?
Merci de vos réponses

1 réponse

Avatar
michdenis
Bonjour Globulus02,

Essaie ceci :

'----------------------------
Sub test()

Dim Sh As Worksheet
Set Sh = Sheets("BD1")
With Sh
With .Range("A4", .Range("A4").End(xlDown))
.Sort Key1:=Sh.Range("A4"), Order1:=xlAscending, _
Key2:=Sh.Range("F4"), Order2:=xlAscending, _
Key3:=Sh.Range("K4"), Order3:=xlAscending, _
Header:=xlGuess
End With
End With
Set Sh = Nothing

End Sub
'----------------------------

P.S. Les autres paramètres de la méthode "Sort" ne sont pas présents
dans toutes les versions Excel. Il est préférable de s'en abstenir
à moins qu'ils soient nécessaires à la procédure.


Salutations!


"Globulus02" a écrit dans le message de news:

Bonjour
Sous excel2003, j'ai un tableau que je met a jour avec différente procédure
ou instruction sous VBA depuis un UserForm.
Lorsque je veux réorganiser mon tableau afin d'en supprimer les doublons
avec :

Sheets("BD1").Select
Range("A4", Range("A4").End(xlDown)).Select
Selection.Sort Key1:=Range("A4"), Order1:=xlAscending,
Key2:=Range("F4") _
, Order2:=xlAscending, Key3:=Range("K4"), Order3:=xlAscending,
Header:= _
xlGuess, OrderCustom:=1, MatchCase:úlse,
Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal, DataOption2:=xlSortTextAsNumbers,
DataOption3 _
:=xlSortNormal

Il ne me classe pas mon tableau alors qu'appeler la même Macro depuis la
feuille fonctionne!?
Ou me suis je trompé?
Merci de vos réponses