He creado una tabla con un encabezado formado por profesiones comunes y una serie de datos como la de la figura,
Os comparto el código que se esconde detrás del botón,
'Si está vacío el campo Profesión, mostramos mensaje de error y salimos de la macro
If IsEmpty(Cells(3, "B")) Then
MsgBox "Es necesario rellenar la profesión"
Exit Sub
End If
'Guardamos la profesion introducida en B3 en la variable profesion
profesion = Cells(3, "B").Value
'Buscamos la profesion en la sexta fila
Set dato = Range("A6:AA6").Find(profesion, LookIn:=xlValues, LookAt:=xlWhole)
'Si no se ha encontrado en la lista, mostramos aviso
If dato Is Nothing Then
MsgBox "Profesión no contemplada en la lista"
Else
'En caso contrario, guardamos el valor de la columna y buscamos la última fila con datos de esa columna
columna = dato.Column
fila = Cells(Rows.Count, columna).End(xlUp).Offset(0, 0).Row
'La seleccionamos para visualizarla mejor
Cells(fila, columna).Select
'Finalmente, mostramos en una ventana de texto el valor de la fila y columna
MsgBox "Columna: " & columna & " Fila: " & fila
End If
End Sub
Para el caso de la profesión "Peluquero",
Su columna es la número 8 y la última fila con datos la 13.
Espero que te sirva este ejemplo para buscar una columna por su nombre y saber su última fila con datos. Descarga el archivo de ejemplo y practica.
Por último, quiero invitarte a compartir tus dudas en los comentarios o en el foro. Intentaré ayudarte en todo lo que pueda, y así aprenderemos todos.
Hasta la próxima.
Si te ha servido y quieres donar
Descarga el archivo del ejemplo
2 Comentarios
Enviar un comentario
Últimas publicaciones
Excelente ejemplo, ya que las distintas profesiones no tienen por que tener el mismo número de filas, gracias por compartir.
Gracias Oscar,
Para cualquier cosa, por aquí estamos.
Saludos.