Sorting Algorithm VBA
Necesitaba ordenar un valor en base a una lista de fechas ordenadas descendentes. No tenia idea como hacerlos y tampoco encontraba información al respecto. Cada vez que tengo una duda que ya no puedo solucionar, le pido ayuda a mi amigo Cristian Lizana para que me de una pista y encontrar el camino correcto. Me comentó de Sorting_algorithm el cual respondía a mis necesidades.
Implementé un código para analizar un rango que selecciono en Excel.
Sort ordena el array de fechas con el orden solicitado:
Implementé un código para analizar un rango que selecciono en Excel.
Set rango = Application.InputBox(Prompt:="Seleccionar rango oe!!!", Title:="Seleccion de rango", Type:=8) 'Obtengo un rango seleccionado. x = 1 For i = 1 To rango.Rows.Count 'ingreso a un array todas las fechas seleccionadas. If (rango.Cells(i, 2).Value = componente) Then ReDim Preserve arrfech(x) arrfech(x) = CDate(rango.Cells(i, 1).Value) x = x + 1 End If Next i
Sort ordena el array de fechas con el orden solicitado:
Do Changed = False For Pointer = 1 To (Application.CountA(arrfech) - 2) If CDate(arrfech(Pointer)) > CDate(arrfech(Pointer + 1)) Then MyTemp = arrfech(Pointer) arrfech(Pointer) = arrfech(Pointer + 1) arrfech(Pointer + 1) = MyTemp Changed = True End If Next Loop While Changed = True
Comentarios
Publicar un comentario