Trier un tableau Excel en VBS

Breizhmanu22 Messages postés 4 Date d'inscription jeudi 28 octobre 2010 Statut Membre Dernière intervention 2 décembre 2010 - 28 oct. 2010 à 10:29
Breizhmanu22 Messages postés 4 Date d'inscription jeudi 28 octobre 2010 Statut Membre Dernière intervention 2 décembre 2010 - 2 déc. 2010 à 09:45
Bonjour à tous,

Je souhaite trier les données d'un tableau Excel avec mon script. Je n'ai eu aucun problème pour faire ça en VBA (enregistrement macro, blablabla...), mais les commandes ne fonctionne pas en VBS!!!! (je pense que ca vient des "2 points" synonyme d'une nouvelle instruction en VBS). Quelqu'un connaît-il l'équivalent des lignes suivantes en VBS????

code VBA
Range("A1:N" & TextNbTot).Select ' TextNbTot = Nombre de lignes au format string
ActiveWorkbook.Worksheets("Tenant").Sort.SortFields.Add Key:=Range("L2", "L" & TextNbTot), SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Tenant").Sort.SortFields.Add Key:=Range("N2", "N" & TextNbTot), SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Tenant").Sort
.SetRange Range("A1", "N" & TextNbTot)
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With

Je souhaite reproduire un tri similaire en VBS en utilisant aussi l'outil de tri d'Excel!!!!
Si vous voulez plus d'infos n'hésitez pas à réagir.

Merci de votre aide
bonne journée

@+ Manu

4 réponses

cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
28 oct. 2010 à 10:54
 Bonjour,

Effectivement, la syntaxe ":" n'existe pas en vbs.
objExcel.Range("A3:H341").Select
objExcel.Range("A3:H341").Sort objExcel.range("A3"),1 '1 pour xlAscending


jean-marc
0
Breizhmanu22 Messages postés 4 Date d'inscription jeudi 28 octobre 2010 Statut Membre Dernière intervention 2 décembre 2010
28 oct. 2010 à 11:09
Merci Jean-Marc,
ça fonctionne parfaitement.

Je vais juste avoir 2 petites questions complémentaires :
1. Comment prendre en compte les en-têtes?
2. Où trouver toutes les initialisations des variables VBA xlAscending, xlCenter, etc qui doivent être déclarées pour le VBS?

Encore merci de ton aide

@+
M@nu
0
Breizhmanu22 Messages postés 4 Date d'inscription jeudi 28 octobre 2010 Statut Membre Dernière intervention 2 décembre 2010
28 oct. 2010 à 11:29
Une troisième question vient s'ajouter :
Lorsque j'applique un tri sur une colonne c'est OK, mais je souhaite trier mes données sur 3 colonnes. je m'explique :

ColA ColB ColC ColD sont mes quatre colonnes de données. Je souhaite appliquer un tri sur ColB puis ColC (sans perdre l'ordre établi par le tri de ColB...) et enfin sur ColD (toujours en conservant l'ordre établi par le tri de ColB et ColC).

@+
M@nu
0
Breizhmanu22 Messages postés 4 Date d'inscription jeudi 28 octobre 2010 Statut Membre Dernière intervention 2 décembre 2010
2 déc. 2010 à 09:45
Salut,

Je suis toujours à la recherche d'une solution pour appliquer un tri sur un tableau avec des critères sur 3 colonnes (Voir les messages précédents).
Est-ce possible en VBS ou faut-il que je trouve une autre solution?

Merci de votre aide.
Bonne journée

@+
M@nu
0
Rejoignez-nous