Skip to main content

¿Cómo ordenar automáticamente una columna por valor en Excel?

Author: Kelly Last Modified: 2025-06-03

Por ejemplo, tienes una tabla de compras como se muestra en la captura de pantalla a continuación. Ahora quieres que la columna Precio se ordene automáticamente cuando ingreses nuevos números/precios en esta columna, ¿cómo podrías resolverlo? Aquí te presento una macro VBA para ayudarte a ordenar automáticamente una columna específica por valor en Excel.

Ordenar automáticamente una columna por valor con VBA

A screenshot showing a sample purchase table in Excel with a price column to be sorted


Ordenar automáticamente una columna por valor con VBA

Esta macro VBA ordenará todos los datos en una columna específica automáticamente tan pronto como ingreses nuevos datos o cambies un valor en la columna en Excel.

1. Haz clic derecho en el nombre de la hoja actual en la "Barra de pestañas de hojas", y luego haz clic en "Ver código" en el menú contextual.
A screenshot showing the right-click menu with View Code option selected in the sheet tab bar

2. En el cuadro de diálogo "Microsoft Visual Basic for Applications" que se abre, pega el siguiente código de macro VBA en la ventana que aparece.
A screenshot of the Microsoft Visual Basic for Applications window with VBA code pasted for auto sorting

VBA: Ordenar automáticamente una columna en Excel

Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range("B:B")) Is Nothing Then
Range("B1").Sort Key1:=Range("B2"), _
Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, _
Orientation:=xlTopToBottom
End If
End Sub

Nota:
1) En el código VBA anterior, "B:B" significa que se ordenará automáticamente la columna B, B1 es la primera celda de la columna B, "B2" es la segunda celda de la columna B, y puedes cambiarlos según tus necesidades.
2) El fragmento "Header:=xlYes" en la 5ª fila le dice a Excel que el rango que vas a ordenar tiene un encabezado, de modo que la primera fila del rango no se incluirá al ordenar. Si no hay encabezado, cámbialo a "Header:=xlNo"; y cambia "Key1:=Range("B2")" en la 4ª fila a "Key1:=Range("B1")".

3. Luego regresa a la hoja de trabajo, cuando ingreses un nuevo número en la columna Precio o modifiques cualquiera de los precios existentes, la columna Precio se ordenará automáticamente en orden ascendente.
A screenshot showing an Excel table with the price column sorted automatically after entering a new value
Nota: Cuando ingreses un nuevo número en la columna Precio, debes ingresar el número en la primera celda en blanco debajo de los números originales. Si hay celdas en blanco entre el nuevo número ingresado y los números originales, así como celdas en blanco entre los números originales, esta columna no se ordenará automáticamente.


Demostración: Ordenar automáticamente una columna por valor con VBA en Excel

 
Kutools para Excel: ¡Más de 300 herramientas prácticas a su alcance! ¡Disfrute de funciones de IA permanentemente gratis! ¡Descárguelo ahora!

Ordena fácilmente por frecuencia de apariciones en Excel

La función "Clasificación avanzada" de Kutools para Excel te permite ordenar datos sin esfuerzo por varios criterios, como longitud de texto, apellido, valor absoluto, frecuencia y más.

A screenshot of Kutools for Excel 'Advanced Sort' feature with sorting options visible

Kutools para Excel - Potencia Excel con más de 300 herramientas esenciales. ¡Disfruta de funciones de IA gratis permanentemente! Consíguelo ahora

Las mejores herramientas de productividad para Office

🤖 Kutools AI Aide: Revoluciona el análisis de datos basado en: Ejecución inteligente | Generar código | Crear fórmulas personalizadas | Analizar datos y generar gráficos | Invocar Funciones mejoradas
Funciones populares: Buscar, resaltar o marcar duplicados | Eliminar filas en blanco | Combinar columnas o celdas sin perder datos | Redondear...
Super BUSCARV: Búsqueda por varios criterios | Búsqueda de varios valores | Búsqueda en varias hojas | Coincidencia difusa....
Lista desplegable avanzada: Crea rápidamente una lista desplegable | Lista desplegable dependiente | Lista desplegable de selección múltiple....
Administrador de columnas: Agregar un número específico de columnas | Mover columnas | Alternar el estado de visibilidad de columnas ocultas | Comparar rangos y columnas...
Funciones destacadas: Cuadrícula de enfoque | Vista de diseño | Barra de fórmulas mejorada | Administrador de Libro de trabajo y Hoja de cálculo | Biblioteca de AutoTexto | Selector de fechas | Combinar Datos | Cifrar/Descifrar celdas | Enviar correo electrónico por lista | Super Filtro | Filtro especial (filtrar celdas con fuente en negrita/cursiva/tachado...)...
Top15 conjuntos de herramientas:12 herramientas de texto (Agregar texto, Eliminar caracteres específicos, ...) | Más de50 tipos de gráficos (Diagrama de Gantt, ...) | Más de40 fórmulas prácticas (Calcular edad basada en la fecha de nacimiento, ...) |19 herramientas de inserción (Insertar código QR, Insertar imagen desde ruta, ...) |12 herramientas de conversión (Convertir a palabras, Conversión de moneda, ...) |7 herramientas para combinar y dividir (Combinar filas avanzado, Dividir celdas, ...) | ... y más

Potencia tus habilidades en Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haz clic aquí para obtener la función que más necesitas...


Office Tab lleva la interfaz de pestañas a Office y facilita mucho tu trabajo

  • Habilita la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
  • Abre y crea varios documentos en nuevas pestañas de la misma ventana, en lugar de nuevas ventanas.
  • ¡Aumenta tu productividad en un50% y reduce cientos de clics de ratón cada día!