Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

double filtre sur excel VBA macro

jeremiek

XLDnaute Nouveau
Salut tout le monde,

Je suis face a 2 petits problèmes qui me rongent la tête depuis quelques jours alors que je suis que la réponse est très simple.

J’ai un tableau avec plusieurs colonnes et je voudrais trier l’ensemble de ces donnes. Ce JE fais une étude sur le marche des voiture. Dans la colonne E j’ai la marque des voiture et dans la colonne G leur vitesse max.

Dans un premier temps je voudrais les trier par marque et ensuite par vitesse max.

Mon code pour trier par ordre alphabetique est le suivant :

Sheets("voiture").Columns("E:E").Select
Range("C1:E53").Sort Key1:=Range("E1"), Order1:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal

Mon code pour trier par vitesse est le suivant :

Sheets("voituret").Columns("E:E").Select
Range("C1:E53").Sort Key1:=Range("E1"), Order1:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal

1er problème :
Ces codes font partie d’une plus grande macro et bizarrement quand je les copie/ colle dans la macro il ne fonctionne pas. Par contre quand il sont seuls ils fonctionnent avez-vous une idée du problème ?

2em problème :
Comment faire pour que lorsque je trie par vitesse il garde en mémoire mon tri par ordre alphabétique afin d’avoir un classement par marque de la voiture la + rapide a la moins rapide ?

J’espère avoir été assez clair.

Je vous remercie pour votre aide
 

jeremiek

XLDnaute Nouveau
Re : double filtre sur excel VBA macro

excuse moi je m'exprime mal.

Lorsque j'utilise la fonction with et que je veux travailler sur des cellules directement j'ecris ce ci par exemple:

With Sheets("TailoredCheck")
.Range("A3:B3").Select
With Selection.Interior
.ColorIndex = 16
.Pattern = xlSolid
End With
Selection.Font.ColorIndex = 2
With Selection.Font
.Name = "BNPP Sans"
.Size = 10
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With

End With

et bien VBA n'execute pas la macro , et me surligne la ligne suivante: .Range("A3:B3").Selec, tu sais pourquoi?
 

Pierrot93

XLDnaute Barbatruc
Re : double filtre sur excel VBA macro

Re,

pas utile les "select", essaye ceci :
Code:
With Sheets("TailoredCheck").Range("A3:B3")
    With .Interior
    .ColorIndex = 16
    .Pattern = xlSolid
    End With
    With .Font
    .Name = "BNPP Sans"
    .Size = 10
    .Strikethrough = False
    .Superscript = False
    .Subscript = False
    .OutlineFont = False
    .Shadow = False
    .Underline = xlUnderlineStyleNone
    .ColorIndex = xlAutomatic
    End With
End With
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…