Ordenar datos AUTOMÁTICAMENTE mientras escribes en Excel
Automatizar la organización de datos en Excel según una columna específica mediante una macro. La macro se ejecutará automáticamente cada vez que se realice un cambio en la hoja de trabajo, ordenando los datos en función de la columna elegida.
Pasos para Crear la Macro en Excel
Sigue estos pasos para implementar la macro de ordenación automática:
Accede al Editor de VBA
- Paso 1: En tu archivo de Excel, da clic derecho sobre la pestaña de la hoja en la que deseas aplicar la macro (por ejemplo, “Hoja1”) y selecciona Ver código.
- Paso 2: Se abrirá el Editor de VBA en el código de esa hoja específica.
Configura el Evento de Cambio en la Hoja
- Paso 1: En el Editor de VBA, ve al menú desplegable en la parte superior izquierda y selecciona Worksheet.
- Paso 2: A la derecha, selecciona Change. Esto configura el evento para que se ejecute cada vez que hay un cambio en la hoja.
Especifica la Columna a Observar para Ordenar
- Usa el objeto
Target
y la propiedad.Column
para especificar la columna donde se activará la macro de ordenación (en este ejemplo, usaremos la columna 4, que podría ser una columna de edades o cualquier otra). - El código verifica si el cambio ocurrió en la columna 4 (columna “D”) y, si es así, procede a ordenar los datos automáticamente.
Escribe el Código para Ordenar los Datos
- Aquí configuramos el rango, las condiciones de ordenación, y si debe tener en cuenta encabezados.
- Especifica el rango inicial de tu tabla de datos (por ejemplo, “D3”) y define si deseas que el orden sea ascendente o descendente.
Código:
Private Sub Worksheet, Change(ByVal Target As Range)
If Target.Column = 4 Then
Range(*D3) Sort Keyt #Range(D3), Header -xlYes, Order1 =xlAscending
End It
End Sub
- Explicación del Código:
Worksheet_Change(ByVal Target As Range)
: Define el evento de cambio en la hoja.If Target.Column = 4
: Verifica si el cambio ocurrió en la columna 4.Range(*D3).Sort
: Comienza a ordenar desde la celda D3.Keyt
: Define D3 como la columna de referencia para ordenar.#
Range(D3)Header:=xlYes
: Ignora el encabezado durante el ordenamiento.Order1:=xlAscending
: Establece el orden de forma ascendente; para descendente, usaOrder1:=xlDescending
.
Prueba y Guarda el Archivo
- Guarda tu archivo de Excel como Libro de Excel habilitado para macros (.xlsm) para que la macro se ejecute correctamente.
- Haz pruebas: ingresa valores o modifica datos en la columna 4 (“D”) y observa cómo Excel ordena automáticamente los datos cada vez que haces un cambio.
Nota Adicional
Recuerda siempre habilitar el contenido de macros cuando abras el archivo. Esta macro es simple y no debería afectar al rendimiento, pero si trabajas con un gran volumen de datos, ten en cuenta que se ejecutará cada vez que modifiques la columna seleccionada, lo que puede hacer que Excel tarde un poco en responder.
Conclusión
Esta macro automática ahorra tiempo al ordenar los datos al instante, facilitando la gestión y visualización de información actualizada en Excel.
Parte 1. Macros para Casos Reales
- Buscador Potente en VBA
- Macro para eliminar tíldes, acentos y caracteres especiales
- Actualizar Tabla Dinámica Automáticamente
- Evitar Parpadeo en ejecución de Macro (Próximo)
- Enviar Datos de Excel A Word (Próximo)
- Eliminar celdas vacías de un Rango (Próximo)
- Filtros Dinámicos (Próximo)
- Hacer Hablar a Excel (Próximo)
- Protegiendo el código de tus Macros (Próximo)
- Insertar Link a Etiqueta en Formulario VBA (Próximo)
Responses