OVH Cloud OVH Cloud

trier des dates en VBA

5 réponses
Avatar
seb
Amis d'Excel Bonjour !!!

Un petit soucis :
J'ai un tableau dont les données viennent d'un userform.
Je désire par le biais d'une procédure, trier ce tableau en fonction des
dates et rien ne marche.

J'ai pourtant formaté mes TextBox :
TextBox1= Format(Date,"dd/mm/yyyy")

L'écriture dans le tableau :
Range("a1")=TextBox1

Et quand je trie :
With Worksheets("Feuil1").Range("a:m").Select
Selection.Sort Key1:=Range("a1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
End With

Snif SNif ca déconne

Quelqu'un aurai une idée du problème?

Merci @+

5 réponses

Avatar
JB
Bonjour,

Il faut convertir en date:

[A1] = CDate(TextBox1)

Cordialement JB


Amis d'Excel Bonjour !!!

Un petit soucis :
J'ai un tableau dont les données viennent d'un userform.
Je désire par le biais d'une procédure, trier ce tableau en fonction des
dates et rien ne marche.

J'ai pourtant formaté mes TextBox :
TextBox1= Format(Date,"dd/mm/yyyy")

L'écriture dans le tableau :
Range("a1")=TextBox1

Et quand je trie :
With Worksheets("Feuil1").Range("a:m").Select
Selection.Sort Key1:=Range("a1"), Order1:=xlAscending, Header:= xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
End With

Snif SNif ca déconne

Quelqu'un aurai une idée du problème?

Merci @+


Avatar
seb
Bonjour JB

Merci bien ca marche nickel.
Par contre,pendant que j'y suis, quelle est l'équivalent pour les heures car
je suppose que j'aurais le même problème vu que Key2 trie en fonction des
heures.

Merci encore.


Bonjour,

Il faut convertir en date:

[A1] = CDate(TextBox1)

Cordialement JB


Amis d'Excel Bonjour !!!

Un petit soucis :
J'ai un tableau dont les données viennent d'un userform.
Je désire par le biais d'une procédure, trier ce tableau en fonction des
dates et rien ne marche.

J'ai pourtant formaté mes TextBox :
TextBox1= Format(Date,"dd/mm/yyyy")

L'écriture dans le tableau :
Range("a1")=TextBox1

Et quand je trie :
With Worksheets("Feuil1").Range("a:m").Select
Selection.Sort Key1:=Range("a1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
End With

Snif SNif ca déconne

Quelqu'un aurai une idée du problème?

Merci @+






Avatar
seb
J'AI TROUVE Je crois

Sans doute existe t'il plus simple mais j'ai créé une colonne où je retourne :
Hour(TextBox2) et une où l'on retrouve Minute(TextBox2)

Key1:= "Colonne avec CDate"
Key2:= "Colonne avec Hour"
Key3:= "Colonne avec Minute"

Merci quand même.


Bonjour JB

Merci bien ca marche nickel.
Par contre,pendant que j'y suis, quelle est l'équivalent pour les heures car
je suppose que j'aurais le même problème vu que Key2 trie en fonction des
heures.

Merci encore.


Bonjour,

Il faut convertir en date:

[A1] = CDate(TextBox1)

Cordialement JB


Amis d'Excel Bonjour !!!

Un petit soucis :
J'ai un tableau dont les données viennent d'un userform.
Je désire par le biais d'une procédure, trier ce tableau en fonction des
dates et rien ne marche.

J'ai pourtant formaté mes TextBox :
TextBox1= Format(Date,"dd/mm/yyyy")

L'écriture dans le tableau :
Range("a1")=TextBox1

Et quand je trie :
With Worksheets("Feuil1").Range("a:m").Select
Selection.Sort Key1:=Range("a1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
End With

Snif SNif ca déconne

Quelqu'un aurai une idée du problème?

Merci @+








Avatar
JB
x="21/6/2006 10:30"
[A2]Íate(x)

On obtient le jour et l'heure ( 38889,4375 si on enlève le format)

x="10:30"
[A2]Íate(x)


JB





Bonjour JB

Merci bien ca marche nickel.
Par contre,pendant que j'y suis, quelle est l'équivalent pour les heure s car
je suppose que j'aurais le même problème vu que Key2 trie en fonction des
heures.

Merci encore.


Bonjour,

Il faut convertir en date:

[A1] = CDate(TextBox1)

Cordialement JB


Amis d'Excel Bonjour !!!

Un petit soucis :
J'ai un tableau dont les données viennent d'un userform.
Je désire par le biais d'une procédure, trier ce tableau en fonct ion des
dates et rien ne marche.

J'ai pourtant formaté mes TextBox :
TextBox1= Format(Date,"dd/mm/yyyy")

L'écriture dans le tableau :
Range("a1")=TextBox1

Et quand je trie :
With Worksheets("Feuil1").Range("a:m").Select
Selection.Sort Key1:=Range("a1"), Order1:=xlAscending, Header :=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBotto m, _
DataOption1:=xlSortNormal
End With

Snif SNif ca déconne

Quelqu'un aurai une idée du problème?

Merci @+








Avatar
seb
C'est aussi simple ?!?!?!

CDate fonctionne aussi avec les heures ?!?!?!

J'ai même pas pensé a essayé.

Merci JB à une prochaine fois.


x="21/6/2006 10:30"
[A2]Íate(x)

On obtient le jour et l'heure ( 38889,4375 si on enlève le format)

x="10:30"
[A2]Íate(x)


JB





Bonjour JB

Merci bien ca marche nickel.
Par contre,pendant que j'y suis, quelle est l'équivalent pour les heures car
je suppose que j'aurais le même problème vu que Key2 trie en fonction des
heures.

Merci encore.


Bonjour,

Il faut convertir en date:

[A1] = CDate(TextBox1)

Cordialement JB


Amis d'Excel Bonjour !!!

Un petit soucis :
J'ai un tableau dont les données viennent d'un userform.
Je désire par le biais d'une procédure, trier ce tableau en fonction des
dates et rien ne marche.

J'ai pourtant formaté mes TextBox :
TextBox1= Format(Date,"dd/mm/yyyy")

L'écriture dans le tableau :
Range("a1")=TextBox1

Et quand je trie :
With Worksheets("Feuil1").Range("a:m").Select
Selection.Sort Key1:=Range("a1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
End With

Snif SNif ca déconne

Quelqu'un aurai une idée du problème?

Merci @+