¿Cómo numerar automáticamente una columna según el valor de una celda en otra columna en Excel?

Numerar automáticamente una columna Basado en Valor en función de otra columna
Use VBA para numerar filas automáticamente según una lógica avanzada
Numerar automáticamente una columna Basado en Valor en función de otra columna
Si desea numerar filas automáticamente en una columna, pero solo cuando se cumplan ciertos criterios en otra (por ejemplo, cuando la columna «Valor no igual a» contenga «Total»), puede lograrlo fácilmente con una fórmula. Esta técnica es ideal para conjuntos de datos pequeños o medianos y ofrece una forma sencilla de omitir la numeración de valores no deseados, como subtotales o filas resumen.
1. En la primera celda de la columna de numeración (por ejemplo, A1), introduzca manualmente 1. Este valor actúa como punto de partida para su secuencia de numeración. Consulte la captura de pantalla:

2. En la segunda celda donde desee que continúe la numeración automática (por ejemplo, A2), introduzca la siguiente fórmula:
=IF(B2="Total","",COUNTIF($A$1:A1,">0")+1) A continuación, pulse la tecla Entrar. Esta fórmula insertará el siguiente número de la secuencia siempre que el valor correspondiente en la columna B no sea «Total». Si la columna B contiene «Total», la fila permanecerá en blanco (sin numerar).
Explicación de los parámetros:
- B2: Esta celda de la columna B se evalúa según la condición. Puede ajustar esta referencia para que coincida con la columna real de sus datos.
- «Total»:Sustituya «Total» por cualquier valor que desee excluir de la numeración.
- $A$1:A1: Este rango cuenta los números anteriores en su columna de numeración. Asegúrese de que la referencia de la celda inicial coincida con la ubicación donde escribió 1 en el paso 1.

Consejo: Este método es ideal para rangos continuos y cuando quiera omitir números en filas que cumplan una condición específica. Tenga cuidado al copiar fórmulas más allá de la última fila de sus datos, ya que podría introducir filas en blanco o formato no deseado. Para conjuntos de datos dinámicos o filtrados, considere usar columnas auxiliares para estabilizar la lógica si observa saltos inesperados en la numeración.
3. Utilice el controlador de autocompletar para arrastrar la fórmula hacia abajo y cubrir el rango de la columna en el que desee aplicar la numeración. La fórmula verificará automáticamente, fila por fila, si el valor correspondiente en la columna B merece un número de secuencia o debe omitirse. Consulte la captura de pantalla:

Recordatorio sobre errores: Si ordena o filtra las columnas referenciadas después de numerar, asegúrese de que sus fórmulas y rangos sigan correctamente alineados. Una alineación incorrecta podría provocar números duplicados o faltantes.

Descubra la magia de Excel con KUTOOLS AI
- Ejecución inteligente: Realice operaciones en celdas, analice datos y cree gráficos con comandos sencillos.
- fórmulas personalizadas: Cree fórmulas a medida para optimizar sus flujos de trabajo.
- Programación en VBA: Escriba e implemente código VBA con facilidad.
- Interpretación de fórmulas: Entienda las fórmulas complejas con facilidad.
- Traducción de texto: Rompa las barreras del idioma directamente en sus hojas de cálculo.
Use VBA para numerar filas automáticamente según una lógica avanzada
En situaciones donde la numeración basada en fórmulas no ofrezca la flexibilidad necesaria —por ejemplo, si desea numerar únicamente las filas visibles en una tabla filtrada, omitir valores concretos de celdas o aplicar una lógica personalizada—, se recomienda una solución en VBA. Una macro le permite crear una numeración dinámica que se adapta automáticamente a los filtros aplicados, ignora celdas vacías o palabras clave definidas y se actualiza en tiempo real conforme evolucionan sus datos. Esta opción resulta especialmente útil en libros de trabajo extensos o conjuntos de datos sujetos a cambios estructurales frecuentes.
Ventajas:
- Puede numerar únicamente las filas visibles (filtradas), ignorando las filas ocultas.
- Admite lógica compleja de omisión, como omitir celdas en blanco o valores definidos por el usuario.
- Flexible para numeraciones puntuales o repetidas en distintas hojas.
Precauciones: Las macros requieren que habilite VBA en su libro de trabajo, y los usuarios deben guardar sus archivos antes de ejecutar cualquier código. Interrupciones inesperadas o una selección incorrecta de rangos pueden provocar una numeración incompleta, por lo que siempre debe revisar los resultados tras la ejecución.
Para crear una macro de numeración automática avanzada, siga estos pasos:
1. Haga clic en Desarrollador > Visual Basic para abrir la ventana de Microsoft Visual Basic para Aplicaciones. A continuación, haga clic en Insertar > Módulo. Copie y pegue el siguiente código en el módulo:
Sub AdvancedAutoNumbering()
Dim ws As Worksheet
Dim lastRow As Long
Dim numCol As String
Dim critCol As String
Dim skipValue As String
Dim currentNum As Long
Dim i As Long
On Error Resume Next
xTitleId = "KutoolsforExcel"
' Set your sheet and columns here
Set ws = ActiveSheet
numCol = "A" ' Column to contain numbering
critCol = "B" ' Column with criteria values
skipValue = "Total" ' Value to skip, can adjust as needed
' Get the last used row in the sheet
lastRow = ws.Cells(ws.Rows.Count, critCol).End(xlUp).Row
currentNum = 1
For i = 1 To lastRow
If ws.Rows(i).Hidden = False Then ' Only number visible rows
If ws.Cells(i, critCol).Value <> skipValue And ws.Cells(i, critCol).Value <> "" Then
ws.Cells(i, numCol).Value = currentNum
currentNum = currentNum + 1
Else
ws.Cells(i, numCol).Value = ""
End If
End If
Next i
End Sub 2. Una vez introducido el código, cierre el editor de VBA. De vuelta en Excel, pulse la tecla F5 o haga clic en el botón Ejecutar. La macro numerará la columna especificada según la lógica elegida: únicamente en las filas visibles y omitiendo aquellas en las que la columna de criterios coincida con «Total» o esté en blanco.
Puede personalizar las variables numCol, critCol y skipValue situadas al principio de la macro para adaptarlas a la estructura de sus datos. ¡Esta macro se puede ampliar fácilmente —por ejemplo, para admitir varios valores de omisión o una selección dinámica de columnas mediante cuadros de diálogo InputBox!
Consejos para la resolución de problemas:
- Si recibe errores como «Subíndice fuera de intervalo», verifique que las referencias de columna sean correctas (por ejemplo, la columna «B» debe existir en la hoja) y que el valor establecido en «Número de filas» coincida con la extensión real de sus datos.
- Si no aparece ninguna numeración, asegúrese de que la hoja de cálculo esté activa y verifique si sus filtros están ocultando todas las filas.
- Para obtener los mejores resultados, revise sus datos en busca de elementos combinados o con formato no estándar que puedan interrumpir la ejecución de la macro.
Sugerencia resumen: Las soluciones basadas en fórmulas son ideales para necesidades de numeración sencillas y estáticas, mientras que las macros en VBA ofrecen una flexibilidad superior con conjuntos de datos grandes o dinámicos, especialmente cuando debes respetar filtros u omitir valores concretos. Antes de ejecutar cualquier solución en VBA, guarda siempre tu trabajo y, si es posible, pruébala primero en una copia.
Artículos relacionados:
- Numeración automática de una columna en Excel
- Use VBA para numerar filas automáticamente según una lógica avanzada
Las mejores herramientas de productividad para Office
Potencie sus habilidades en Excel con Kutools para Excel y experimente una eficiencia como nunca antes.Kutools para Excel ofrece más de 300 funciones avanzadas para aumentar su productividad y Ahorrar tiempo.Haga clic aquí para obtener la función que más necesita...
Office Tab aporta una interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil
- Active la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abra y cree varios documentos en nuevas pestañas dentro de la misma ventana, en lugar de hacerlo en ventanas separadas.
- ¡Aumente su productividad en un 50 % y elimine cientos de clics del ratón cada día!
Todos los complementos de Kutools en un solo instalador.
Kutools for Office es la suite que incluye complementos para Excel, Word, Outlook y PowerPoint, además de Office Tab Pro, ideal para equipos que trabajan en distintas aplicaciones de Office.
- Suite integral— complementos para Excel, Word, Outlook y PowerPoint + Office Tab Pro
- Un instalador, una licencia— configuración en minutos (compatible con MSI)
- Rendimiento mejorado en conjunto— productividad optimizada en todas las aplicaciones de Office
- Prueba gratuita de 30 días con todas las funciones— sin registro ni tarjeta de crédito
- La mejor relación calidad-precio— ahorre frente a la compra individual de complementos