¿Cómo devolver la primera o la última celda no vacía en una fila o columna?
En el trabajo diario con Excel, es habitual encontrarse con conjuntos de datos donde solo algunas celdas contienen valores y otras están vacías. A menudo, puede necesitar identificar rápidamente la primera o la última celda completada en una determinada fila o columna. Aunque hacerlo manualmente resulta sencillo con pocas entradas, buscar estos valores en filas o columnas largas se vuelve ineficiente, lento y propenso a errores.
Existen varios métodos prácticos para recuperar de forma eficiente el valor de la primera o la última celda no vacía en una fila o columna, lo que le ayudará a automatizar esta tarea y ahorrar tiempo valioso. A continuación encontrará soluciones tanto con fórmulas como con otros enfoques útiles adecuados para diferentes escenarios de la vida real, incluidos el manejo de rangos dinámicos o conjuntos de datos extensos.
Devolver la primera celda no vacía en una fila o columna con fórmula
Devolver la última celda no vacía en una fila o columna con fórmula
Devolver la primera o la última celda no vacía mediante macro VBA
Encontrar la primera o la última celda no vacía usando la función de Filtro de Excel
Devolver la primera celda no vacía en una fila o columna con fórmula
Para extraer la primera celda con datos de una fila o columna, puede utilizar una combinación de las funciones INDEX y MATCH. Este método es válido si desea recuperar el valor de forma programática, manteniendo su hoja de cálculo dinámica a medida que cambian los datos. Así es cómo hacerlo:
1. En una celda en blanco junto a su rango de datos, escriba la siguiente fórmula:
=INDEX(A1:A13,MATCH(TRUE,INDEX((A1:A13<>0),0),0))
Por ejemplo, si sus datos están en las celdas A1 a A13, esta fórmula devolverá la primera celda no vacía y diferente de cero. Vea el ejemplo a continuación:
2. Pulse la tecla Enter. El valor de la primera celda del rango que no esté vacía (o no sea cero, según la lógica de la fórmula) se mostrará de la siguiente manera:
Notas y consejos:
- En la fórmula anterior, puede ajustar A1:A13 para hacer referencia a cualquier columna o incluso a una fila (como1:1 para la fila1, o B2:M2 para una subsección de una fila).
- Este método funciona de manera confiable en una única fila o columna. Para tablas o rangos de selección múltiple, considere aplicar la fórmula individualmente a cada fila o columna.
- Si la fórmula devuelve un error (#N/D), compruebe que su rango contiene al menos una celda no vacía y diferente de cero.
- Recuerde: para celdas realmente vacías (""), reemplace
<>0
por<>""
si solo desea ignorar celdas vacías y no los ceros.

Descubre la Magia de Excel con Kutools AI
- Ejecución Inteligente: Realiza operaciones en celdas, analiza datos y crea gráficos, todo impulsado por comandos simples.
- Fórmulas Personalizadas: Genera fórmulas adaptadas para optimizar tus flujos de trabajo.
- Codificación VBA: Escribe e implementa código VBA sin esfuerzo.
- Interpretación de Fórmulas: Comprende fórmulas complejas con facilidad.
- Traducción de Texto: Supera las barreras del idioma dentro de tus hojas de cálculo.
Devolver la última celda no vacía en una fila o columna con fórmula
Para obtener el valor de la última celda no vacía en un rango determinado, una fórmula de matriz basada en LOOKUP ofrece una solución eficiente y sencilla para datos dinámicos o cambiantes. Esto resulta especialmente útil para identificar automáticamente la entrada de datos más reciente en una lista o tabla resumen.
1. Escriba la siguiente fórmula en una celda vacía junto a su rango objetivo:
=LOOKUP(2,1/(A1:A13<>""),A1:A13)
Esta fórmula examina el rango especificado y devuelve el valor de la última celda que no esté vacía. Por ejemplo, usando A1:A13 como rango:
2. Después de pulsar Enter, Excel calculará y mostrará el valor de la última celda no vacía:
Notas y sugerencias:
- Puede usar esta fórmula con cualquier columna o fila individual (B1:B20, F8:F30 o2:2, etc.). Actualice la referencia del rango según sea necesario.
- Si sus datos incluyen ceros que desea ignorar, puede reemplazar
A1:A13<>""
porA1:A13<>0
, pero asegúrese de que la distinción entre vacío real y cero coincida con lo que quiere lograr. - Este método es ideal para rangos de datos sencillos. Para rangos con fórmulas que devuelven "" (texto vacío), la fórmula considerará dichas celdas como vacías.
- Si todas las celdas están vacías, la fórmula devolverá un error #N/D.
Devolver la primera o la última celda no vacía mediante macro VBA
Para quienes trabajan con grandes volúmenes de datos o necesitan automatizar tareas repetitivas, una macro VBA sencilla puede simplificar considerablemente el proceso—especialmente cuando los rangos varían o involucran muchas filas o columnas. A diferencia de las fórmulas, VBA ejecuta acciones bajo demanda, como encontrar la primera o la última celda no vacía, lo que la hace ideal para operaciones repetidas en varios rangos.
1. Abra el editor de VBA yendo a Desarrollador > Visual Basic. En la ventana de VBA que aparece, haga clic en Insertar > Módulo y pegue uno de los siguientes procedimientos en la ventana del módulo:
Macro para encontrar la primera celda no vacía en un rango seleccionado:
Sub FindFirstNonBlankCell()
Dim rng As Range
Dim cell As Range
Dim firstValue As Variant
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set rng = Application.Selection
Set rng = Application.InputBox("Select range", xTitleId, rng.Address, Type:=8)
firstValue = ""
For Each cell In rng
If cell.Value <> "" Then
firstValue = cell.Value
Exit For
End If
Next cell
If firstValue <> "" Then
MsgBox "The first non blank cell value is: " & firstValue, vbInformation, xTitleId
Else
MsgBox "No non blank cells found.", vbExclamation, xTitleId
End If
End Sub
De manera similar, aquí tiene el código para encontrar la última celda no vacía:
Sub FindLastNonBlankCell()
Dim rng As Range
Dim cell As Range
Dim lastValue As Variant
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set rng = Application.Selection
Set rng = Application.InputBox("Select range", xTitleId, rng.Address, Type:=8)
lastValue = ""
For Each cell In rng
If cell.Value <> "" Then
lastValue = cell.Value
End If
Next cell
If lastValue <> "" Then
MsgBox "The last non blank cell value is: " & lastValue, vbInformation, xTitleId
Else
MsgBox "No non blank cells found.", vbExclamation, xTitleId
End If
End Sub
2. Para ejecutar el código, haga clic en el Ejecutar botón en el editor de VBA. Se le pedirá que seleccione el rango objetivo en el que buscar celdas no vacías. Tras realizar su selección y confirmar, se mostrará en un cuadro de diálogo el valor de la primera o la última celda no vacía según la macro que ejecute.
- Estas macros son flexibles y adecuadas tanto para filas como para columnas, independientemente del tamaño de los datos.
- VBA permite automatización y procesamiento repetible, por lo que es ideal para tareas frecuentes o a gran escala.
- Al ejecutar macros, asegúrese de guardar su libro de trabajo y habilitar las macros si es necesario. Siempre pruebe primero con datos de muestra para verificar la precisión antes de aplicarlas en datos importantes.
Encontrar la primera o la última celda no vacía usando la función de Filtro de Excel
Para quienes necesitan una forma visual y rápida de identificar valores no vacíos—especialmente en columnas muy extensas—, la función de Filtro incorporada en Excel puede ayudarle a resaltar las entradas no vacías de un vistazo. Aunque este método no devolverá automáticamente el valor en otra celda, es muy útil para la revisión o navegación en análisis de datos.
Así puede localizar visualmente la primera o la última celda no vacía mediante el filtro:
- Seleccione la columna o fila que contiene sus datos. Puede seleccionar la columna completa (por ejemplo, haciendo clic en la letra de la columna) para facilitar el filtrado.
- Haga clic en la pestaña Datos y luego elija Filtro.
- Haga clic en la pequeña flecha de filtro en el encabezado de su rango o tabla.
- Desmarque la opción (Blanks) para que solo queden visibles las celdas con contenido.
- Una vez aplicado el filtro, el primer valor visible en la parte superior de la columna será su primera celda no vacía; desplace hasta la parte inferior para ver la última.
Ventajas: El método de filtro es rápido, no requiere fórmulas y funciona bien incluso en columnas con miles de filas.
Desventajas: La solución es solo visual: no obtiene el resultado en una celda ni admite la automatización como las fórmulas o VBA. Aun así, es ideal para revisiones manuales y exploraciones interactivas de datos.
Solución de problemas y sugerencias:
Si el filtro parece no funcionar, asegúrese de no haber seleccionado solo parte de sus datos, ya que esto puede hacer que el filtro se aplique incorrectamente. Elimine los filtros al finalizar haciendo clic en Datos > Borrar para restaurar la vista completa de su conjunto de datos.
Las mejores herramientas de productividad para Office
Impulsa al máximo tu dominio de Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para potenciar la productividad y ahorrar tiempo.Haz clic aquí para obtener la función que más necesitas...
Office Tab aporta una interfaz de pestañas a Office y hace tu trabajo mucho más sencillo
- 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 vez de en nuevas ventanas.
- ¡Aumenta tu productividad hasta un50% y reduce cientos de clics de ratón cada día!