VBA para AutoFiltro Ordenar SortFields no ordenando con clasificaciones de columnas adicionales.
Tengo una matriz de datos varias filas hacia abajo desde la parte superior. Tengo un código VBA de trabajo que limita los datos con un Rango y los almacena en una variable. Luego los redimensiona para incluir una fila de encabezado, borra el filtro y luego lo vuelve a agregar según el rango seleccionado.
En ese punto, quiero ordenar los datos por 3 filas.
Utilizo Cells.Find para encontrar el título de la columna que quiero y luego ordenar la fila y la columna en variables. Agrego 1 a la variable Column y la almaceno como una variable para la siguiente ordenación…
He probado cada uno de los comandos de ordenación y funcionan de forma independiente, pero no puedo hacer que funcionen en el orden combinado Fecha:, luego Prioridad:, luego Estado:.
Gracias por la ayuda de antemano.
davy.ai
Para ordenar los datos por filas de a 3, se puede usar el siguiente código VBA:
Este código primero encuentra la celda con el encabezado “Due:” usando
Cells.Find
, y luego determina los números de fila y columna para esta celda y las columnas correspondientes para “Priority:” y “Status:”. Luego se utiliza el métodoSortFields
del objetoSort
para agregar tres claves de ordenamiento, una para cada una de las columnas, cada una con sus propias opciones de ordenamiento. El métodoSetRange
se utiliza para especificar el rango a ordenar, en este caso toda la tabla comenzando desde la celda A1. Por último, se establecen las opciones de ordenamiento y se aplica el ordenamiento con el métodoApply
. Esto debería ordenar los datos primero por fecha, luego por prioridad y por último por estado.