Visual Basic - ¿COMO ORDENO FECHAS EN UN LISTBOX???

Life is soft - evento anual de software empresarial
 
Vista:

¿COMO ORDENO FECHAS EN UN LISTBOX???

Publicado por Fran (27 intervenciones) el 11/11/2000 00:00:00
Hola,,, Mi problema es que tengo un listbox lleno de fechas, ejemplo:
11/05/00
07/03/00
23/11/00

¿como puedo ordenar el ListBox por orden de Fecha de tal forma que que el orden sea por dia, mes y Año,,,, ?? por favor, si es posible pangame un Ejemplo:
.......... Muchas Gracias de Antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:¿COMO ORDENO FECHAS EN UN LISTBOX???

Publicado por jesus (1 intervención) el 03/12/2000 00:00:00
´ Ordenación de un listindex:
´ Una solución podría ser pasar los valores del listindex a una
´matriz, y luego ordenarla aplicando un algoritmo de ordenación,
´dicho algoritmo lo puedes encontrar en cualquier libro de programación
´aunque no sea de Visual Basic, no obstante, te envio un proceso que ordena
´una matriz aunque no es el más óptimo.
´Lo he probado con 10 fechas introducidas en este orden en el
´listindex
´05/01/00
´12/12/99
´12/12/00
´12/12/01
´28/02/98
´20/10/99
´30/10/00
´30/11/98
´31/12/00
´31/12/01
Private Sub List1_Click()
Dim I As Integer, Fecha As Date, J As Integer, K As Integer, X As Integer
Dim mOrigen(10) As Variant, mDestino(10) As Variant, mInter(10) As Variant
Dim SinInsertar As Boolean, Pos As Integer
´& Format(CStr(Date), "dd/mm/yyyy")
´ partimos de 10 valores, si no tienes un nº fijo de valores
´ deberás cambiar el 10 de los For por UBound(de matriz)
´ 1º pasamos los valores de listindex a la matriz (mOrigen)
For I = 0 To List1.ListCount - 1
mOrigen(I) = CDate(List1.List(I))
Next
´ usamos mInter como matriz intermedia y le pasamos el 1º valor
mInter(0) = mOrigen(0)
Pos = 0
´ recorremos toda la matriz mOrigen
For I = 1 To 9
SinInsertar = True
Fecha = mOrigen(I) ´valor actual que estamos tratando
For J = 0 To 9
If mInter(J) = "" Then
Exit For
End If
If Fecha <
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar