Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Excel 2007 et 2003

4 réponses
Avatar
IMER09
Bonjour a tous

J'ai ce bout de code ci dessous qui fonctionne tres bien avec Excel 2007
mais Bug avec Excel 2003

ActiveWorkbook.Worksheets("CLIENT").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("CLIENT").Sort.SortFields.Add
Key:=Range("A2:A100"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal

With ActiveWorkbook.Worksheets("CLIENT").Sort

.SetRange Range("A1:B100")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With

Est ce que quelqu'un aurait une idees

Merci
Rémi

4 réponses

Avatar
Daniel.C
Bonjour.
Cette syntaxe de tri a été ajoutée dans XL2007.
Si tu veux un code fonctionnant avec les deux versions, il faut prendre
la syntaxe XL2003 (limitée à 3 critères de tri)
Cordialement.
Daniel

Bonjour a tous

J'ai ce bout de code ci dessous qui fonctionne tres bien avec Excel 2007 mais
Bug avec Excel 2003

ActiveWorkbook.Worksheets("CLIENT").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("CLIENT").Sort.SortFields.Add
Key:=Range("A2:A100"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal

With ActiveWorkbook.Worksheets("CLIENT").Sort

.SetRange Range("A1:B100")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With

Est ce que quelqu'un aurait une idees

Merci
Rémi


Avatar
IMER09
Merci Daniel

Pour tout dire je vois bien que c'est pour faire un trie, mais quel est le
role de cette macro? (J'ai du copier cela par ici ou par la sans prendre de
note, idiot que je suis, et je ne sais plus a quoi ca sert mea coulpa)
Avec:[A2:B100].Sort KEY1:=[A1], Order1:=xlAscending, Header:=xlGuess
j'ai le meme resultat et pas de pb sur 2003
quel est la diff ? mise a par que c'est inutilisable sur 2003

Rémi

"Daniel.C" a écrit dans le message de news:

Bonjour.
Cette syntaxe de tri a été ajoutée dans XL2007.
Si tu veux un code fonctionnant avec les deux versions, il faut prendre la
syntaxe XL2003 (limitée à 3 critères de tri)
Cordialement.
Daniel

Bonjour a tous

J'ai ce bout de code ci dessous qui fonctionne tres bien avec Excel 2007
mais Bug avec Excel 2003

ActiveWorkbook.Worksheets("CLIENT").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("CLIENT").Sort.SortFields.Add
Key:=Range("A2:A100"), _
SortOn:=xlSortOnValues, Order:=xlAscending,
DataOption:=xlSortNormal

With ActiveWorkbook.Worksheets("CLIENT").Sort

.SetRange Range("A1:B100")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With

Est ce que quelqu'un aurait une idees

Merci
Rémi






Avatar
Daniel.C
Chaque ligne "SortFields.Add" ajoute un critère de tri(mot-clé "key").
Les paramètres Range, Header.. sont plus proches des fonctionnalités du
tri XL2003. La principale différence est que tu peux avoir plus de
trois critères de tri et, dans une moindre mesure, le tri sur les
colonnes. Pour une description de chaque paramètre, reporte-toi à
l'aide VBA, etsi tu as un problème, reviens ici.
Daniel

Merci Daniel

Pour tout dire je vois bien que c'est pour faire un trie, mais quel est le
role de cette macro? (J'ai du copier cela par ici ou par la sans prendre de
note, idiot que je suis, et je ne sais plus a quoi ca sert mea coulpa)
Avec:[A2:B100].Sort KEY1:=[A1], Order1:=xlAscending, Header:=xlGuess
j'ai le meme resultat et pas de pb sur 2003
quel est la diff ? mise a par que c'est inutilisable sur 2003

Rémi

"Daniel.C" a écrit dans le message de news:

Bonjour.
Cette syntaxe de tri a été ajoutée dans XL2007.
Si tu veux un code fonctionnant avec les deux versions, il faut prendre la
syntaxe XL2003 (limitée à 3 critères de tri)
Cordialement.
Daniel

Bonjour a tous

J'ai ce bout de code ci dessous qui fonctionne tres bien avec Excel 2007
mais Bug avec Excel 2003

ActiveWorkbook.Worksheets("CLIENT").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("CLIENT").Sort.SortFields.Add
Key:=Range("A2:A100"), _
SortOn:=xlSortOnValues, Order:=xlAscending,
DataOption:=xlSortNormal

With ActiveWorkbook.Worksheets("CLIENT").Sort

.SetRange Range("A1:B100")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With

Est ce que quelqu'un aurait une idees

Merci
Rémi








Avatar
IMER09
Merci Daniel

Rémi

"Daniel.C" a écrit dans le message de news:

Chaque ligne "SortFields.Add" ajoute un critère de tri(mot-clé "key"). Les
paramètres Range, Header.. sont plus proches des fonctionnalités du tri
XL2003. La principale différence est que tu peux avoir plus de trois
critères de tri et, dans une moindre mesure, le tri sur les colonnes. Pour
une description de chaque paramètre, reporte-toi à l'aide VBA, etsi tu as
un problème, reviens ici.
Daniel

Merci Daniel

Pour tout dire je vois bien que c'est pour faire un trie, mais quel est
le role de cette macro? (J'ai du copier cela par ici ou par la sans
prendre de note, idiot que je suis, et je ne sais plus a quoi ca sert mea
coulpa)
Avec:[A2:B100].Sort KEY1:=[A1], Order1:=xlAscending, Header:=xlGuess
j'ai le meme resultat et pas de pb sur 2003
quel est la diff ? mise a par que c'est inutilisable sur 2003

Rémi

"Daniel.C" a écrit dans le message de news:

Bonjour.
Cette syntaxe de tri a été ajoutée dans XL2007.
Si tu veux un code fonctionnant avec les deux versions, il faut prendre
la syntaxe XL2003 (limitée à 3 critères de tri)
Cordialement.
Daniel

Bonjour a tous

J'ai ce bout de code ci dessous qui fonctionne tres bien avec Excel
2007 mais Bug avec Excel 2003

ActiveWorkbook.Worksheets("CLIENT").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("CLIENT").Sort.SortFields.Add
Key:=Range("A2:A100"), _
SortOn:=xlSortOnValues, Order:=xlAscending,
DataOption:=xlSortNormal

With ActiveWorkbook.Worksheets("CLIENT").Sort

.SetRange Range("A1:B100")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With

Est ce que quelqu'un aurait une idees

Merci
Rémi