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

VBA Excel 200 Un tri très spécial

6 réponses
Avatar
Céline Brien
Bonjour à tous,
La colonne E : DateAConclure
La colonne G : Heure
La colonneH : DateConclu
Je souhaite obtenir en tri croissant :
1) DateAConclure avec Heure
2) DateAConclure sans Heure
3) DateConclu
Voir exemple ci-dessous.
Joyeuses fêtes,
Céline
-----------------------------------------------
Exemple :
Col E Col G Col H
15 déc 10:00
20 déc 15:00
21 déc 13:00
15 déc
20 déc
20 déc
30 juin
30 juin
30 juin

6 réponses

Avatar
michdenis
Bonjour Céline,

Si tu utilises la commande : Données / Trier / , cela ne fonctionne pas ?

Quel est le format de chacune des colonnes que tu filtres ?


Salutations!


"Céline Brien" a écrit dans le message de news:%
Bonjour à tous,
La colonne E : DateAConclure
La colonne G : Heure
La colonneH : DateConclu
Je souhaite obtenir en tri croissant :
1) DateAConclure avec Heure
2) DateAConclure sans Heure
3) DateConclu
Voir exemple ci-dessous.
Joyeuses fêtes,
Céline
-----------------------------------------------
Exemple :
Col E Col G Col H
15 déc 10:00
20 déc 15:00
21 déc 13:00
15 déc
20 déc
20 déc
30 juin
30 juin
30 juin
Avatar
Bonjour Céline,

Pouvez vous être plus présice sur le méthode que vous
souhaitez utiliser pour résoudre le probème ? souhaitez
vous éditer une macro ou tout "simplement" travailler
directement sur la worksheet ?

Bien à vous Luc

Bonjour à tous,
La colonne E : DateAConclure
La colonne G : Heure
La colonneH : DateConclu
Je souhaite obtenir en tri croissant :
1) DateAConclure avec Heure
2) DateAConclure sans Heure
3) DateConclu
Voir exemple ci-dessous.
Joyeuses fêtes,
Céline
-----------------------------------------------
Exemple :
Col E Col G Col H
15 déc 10:00
20 déc 15:00
21 déc 13:00
15 déc
20 déc
20 déc
30 juin
30 juin
30 juin

.



Avatar
AV
Si ton 1° critère de tri est les "Heure" et le 2° les "DateAConclure", ça fait
pas ce que tu attends ?

AV
Avatar
Céline Brien
Bonjour à tous,
Bonjour Michdenis,
Bonjour Luc,
Bonjour AV,
Je vais répondre à toutes vos questions en même temps.
Je souhaite effectuer ce tri dans une macro, donc en VBA.
Les colonnes de date sont au format j-mmm-aaaa et la colonne heure est
au format hh:mm.
Par ailleurs, avec la fonction Trier, du menu Données, si j'effectue un
tri par la colonne DateAConclure et Heure j'obtiens ceci :
-------------------------------------------------------
DateAConclure Heure DateConclu
15-déc-2003 09:00
15-déc-2003 10:00
15-déc-2003
20-déc-2003 10:00
20-déc-2003 15:00
20-déc-2003
20-déc-2003
21-déc-2003 13:00
21-déc-2003 15:00
30-juin-2003
30-juin-2003
30-juin-2003
4-avr-2003
4-avr-2003


-------------------------------------------------------
Je souhaite obtenir ceci :
-------------------------------------------------------
DateAConclure Heure DateConclu
15-déc-2003 09:00
15-déc-2003 10:00
20-déc-2003 10:00
20-déc-2003 15:00
21-déc-2003 13:00
21-déc-2003 15:00
15-déc-2003
20-déc-2003
20-déc-2003
30-juin-2003
30-juin-2003
30-juin-2003
4-avr-2003
4-avr-2003

-------------------------------------------------------
Pour obtenir le tri que je souhaite, je dois effectuer trois tris :
1)
Trier la colonne DateConclu en ordre décroissant
2)
Trier la colonne DateAConclure en ordre croissant
Trier la colonne Heure en ordre croissant
3)
Sélectionner les lignes ayant des heures et trier par DateAConclure et
Heure en ordre croissant

En vous expliquant le tout, je crois avoir trouvé une piste pour
effectuer ce tri. Je vous reviens si je trouve.
Toutes vos suggestions sont les bienvenues.
Joyeuses fêtes,
Céline

"michdenis" a écrit dans le message de
news:Oy$
Si tu utilises la commande : Données / Trier / , cela ne fonctionne
pas ?

Quel est le format de chacune des colonnes que tu filtres ?
a écrit dans le message de

news:07b501c3ce27$ea3a46c0$
Pouvez vous être plus présice sur le méthode que vous souhaitez utiliser
pour résoudre le probème ? souhaitez
vous éditer une macro ou tout "simplement" travailler directement sur la
worksheet ?
Bien à vous Luc
"AV" a écrit dans le message de
news:
Si ton 1° critère de tri est les "Heure" et le 2° les "DateAConclure",
ça fait

pas ce que tu attends ?
"Céline Brien" a écrit dans le message

de news:%
La colonne E : DateAConclure
La colonne G : Heure
La colonneH : DateConclu
Je souhaite obtenir :
1) DateAConclure avec Heure en tri croissant Date et Heure
2) DateAConclure sans Heure en tri croissant
3) DateConclu en tri décroissant
Céline


Avatar
Céline Brien
Bonjour à tous,
J'ai réussi !
Bien poser la question c'est déjà un bon pas vers la réponse !
La principale difficulté finalement était de sélectionner les lignes
avec les heures.
J'ai créé une variable et utilisé cette variable pour sélectionner les
lignes à trier.
J'adore les possibilités qu'offre cette petit ligne de code : x [B65536].End(3).Row
Voir les codes complets ci-dessous.
Joyeuses fêtes !
Céline
-----------------------------------------------------------
Sub test()
' Trier la colonne DateConclu en ordre décroissant
Range("C2").Select
Selection.Sort Key1:=Range("C2"), Order1:=xlDescending,
Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom
' Trier la colonne DateAConclure en ordre croissant
Range("A2").Select
Selection.Sort Key1:=Range("A2"), Order1:=xlAscending,
Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom
' Trier la colonne Heure en ordre croissant
Range("B2").Select
Selection.Sort Key1:=Range("B2"), Order1:=xlAscending,
Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom
' Créer une variable indiquant la dernière cellule de la colonne A
x = [B65536].End(3).Row
' Sélectionner les lignes ayant des heures
Range("A2:B" & x).Select
' Trier la sélection colonne DateAConclure et Heure
Selection.Sort Key1:=Range("A2"), Order1:=xlAscending,
Key2:=Range("B2") _
, Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1,
MatchCase:= _
False, Orientation:=xlTopToBottom
' Sélectionner la cellule A1
Range("A1").Select
End Sub

"Céline Brien" a écrit dans le message
de news:
Bonjour à tous,
Bonjour Michdenis,
Bonjour Luc,
Bonjour AV,
Je vais répondre à toutes vos questions en même temps.
Je souhaite effectuer ce tri dans une macro, donc en VBA.
Les colonnes de date sont au format j-mmm-aaaa et la colonne heure est
au format hh:mm.
Par ailleurs, avec la fonction Trier, du menu Données, si j'effectue
un

tri par la colonne DateAConclure et Heure j'obtiens ceci :
-------------------------------------------------------
DateAConclure Heure DateConclu
15-déc-2003 09:00
15-déc-2003 10:00
15-déc-2003
20-déc-2003 10:00
20-déc-2003 15:00
20-déc-2003
20-déc-2003
21-déc-2003 13:00
21-déc-2003 15:00
30-juin-2003
30-juin-2003
30-juin-2003
4-avr-2003
4-avr-2003


-------------------------------------------------------
Je souhaite obtenir ceci :
-------------------------------------------------------
DateAConclure Heure DateConclu
15-déc-2003 09:00
15-déc-2003 10:00
20-déc-2003 10:00
20-déc-2003 15:00
21-déc-2003 13:00
21-déc-2003 15:00
15-déc-2003
20-déc-2003
20-déc-2003
30-juin-2003
30-juin-2003
30-juin-2003
4-avr-2003
4-avr-2003

-------------------------------------------------------
Pour obtenir le tri que je souhaite, je dois effectuer trois tris :
1)
Trier la colonne DateConclu en ordre décroissant
2)
Trier la colonne DateAConclure en ordre croissant
Trier la colonne Heure en ordre croissant
3)
Sélectionner les lignes ayant des heures et trier par DateAConclure et
Heure en ordre croissant

En vous expliquant le tout, je crois avoir trouvé une piste pour
effectuer ce tri. Je vous reviens si je trouve.
Toutes vos suggestions sont les bienvenues.
Joyeuses fêtes,
Céline

"michdenis" a écrit dans le message de
news:Oy$
Si tu utilises la commande : Données / Trier / , cela ne
fonctionne


pas ?
Quel est le format de chacune des colonnes que tu filtres ?
a écrit dans le message de

news:07b501c3ce27$ea3a46c0$
Pouvez vous être plus présice sur le méthode que vous souhaitez
utiliser

pour résoudre le probème ? souhaitez
vous éditer une macro ou tout "simplement" travailler directement sur
la

worksheet ?
Bien à vous Luc
"AV" a écrit dans le message de
news:
Si ton 1° critère de tri est les "Heure" et le 2° les
"DateAConclure",


ça fait
pas ce que tu attends ?
"Céline Brien" a écrit dans le message

de news:%
La colonne E : DateAConclure
La colonne G : Heure
La colonneH : DateConclu
Je souhaite obtenir :
1) DateAConclure avec Heure en tri croissant Date et Heure
2) DateAConclure sans Heure en tri croissant
3) DateConclu en tri décroissant
Céline





Avatar
Céline Brien
Bonjour à tous,
J'ai réussi !
Bien poser la question c'est déjà un bon pas vers la réponse !
La principale difficulté finalement était de sélectionner les lignes
avec les heures.
J'ai créé une variable et utilisé cette variable pour sélectionner les
lignes à trier.
J'adore les possibilités qu'offre cette petit ligne de code : x [B65536].End(3).Row
Voir les codes complets ci-dessous.
Joyeuses fêtes !
Céline
-----------------------------------------------------------
Sub test()
' Trier la colonne DateConclu en ordre décroissant
Range("C2").Select
Selection.Sort Key1:=Range("C2"), Order1:=xlDescending,
Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom
' Trier la colonne DateAConclure en ordre croissant
Range("A2").Select
Selection.Sort Key1:=Range("A2"), Order1:=xlAscending,
Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom
' Trier la colonne Heure en ordre croissant
Range("B2").Select
Selection.Sort Key1:=Range("B2"), Order1:=xlAscending,
Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom
' Créer une variable indiquant la dernière cellule de la colonne A
x = [B65536].End(3).Row
' Sélectionner les lignes ayant des heures
Range("A2:B" & x).Select
' Trier la sélection colonne DateAConclure et Heure
Selection.Sort Key1:=Range("A2"), Order1:=xlAscending,
Key2:=Range("B2") _
, Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1,
MatchCase:= _
False, Orientation:=xlTopToBottom
' Sélectionner la cellule A1
Range("A1").Select
End Sub

"Céline Brien" a écrit dans le message
de news:
Bonjour à tous,
Bonjour Michdenis,
Bonjour Luc,
Bonjour AV,
Je vais répondre à toutes vos questions en même temps.
Je souhaite effectuer ce tri dans une macro, donc en VBA.
Les colonnes de date sont au format j-mmm-aaaa et la colonne heure est
au format hh:mm.
Par ailleurs, avec la fonction Trier, du menu Données, si j'effectue
un

tri par la colonne DateAConclure et Heure j'obtiens ceci :
-------------------------------------------------------
DateAConclure Heure DateConclu
15-déc-2003 09:00
15-déc-2003 10:00
15-déc-2003
20-déc-2003 10:00
20-déc-2003 15:00
20-déc-2003
20-déc-2003
21-déc-2003 13:00
21-déc-2003 15:00
30-juin-2003
30-juin-2003
30-juin-2003
4-avr-2003
4-avr-2003


-------------------------------------------------------
Je souhaite obtenir ceci :
-------------------------------------------------------
DateAConclure Heure DateConclu
15-déc-2003 09:00
15-déc-2003 10:00
20-déc-2003 10:00
20-déc-2003 15:00
21-déc-2003 13:00
21-déc-2003 15:00
15-déc-2003
20-déc-2003
20-déc-2003
30-juin-2003
30-juin-2003
30-juin-2003
4-avr-2003
4-avr-2003

-------------------------------------------------------
Pour obtenir le tri que je souhaite, je dois effectuer trois tris :
1)
Trier la colonne DateConclu en ordre décroissant
2)
Trier la colonne DateAConclure en ordre croissant
Trier la colonne Heure en ordre croissant
3)
Sélectionner les lignes ayant des heures et trier par DateAConclure et
Heure en ordre croissant

En vous expliquant le tout, je crois avoir trouvé une piste pour
effectuer ce tri. Je vous reviens si je trouve.
Toutes vos suggestions sont les bienvenues.
Joyeuses fêtes,
Céline