Aplicar el valor de la ultima fila con datos

Saludos estimados expertos
'Tengo necesidad de indicar en los casos siguientes el valor de la ultima fila con datos de una hoja, es decir sustituir el valor "1850" por el numero de la ultima fila que tenga datos
¡suele haber filas en blanco!
1º Caso      While ActiveCell.Row <= 1850
2º Caso      For Fila = 5 To 1850
Recibid mi más cordial reconocimiento por vuestra ayuda

1 respuesta

Respuesta
1
Para lo que pides no necesitas ningún código prueba con esta fórmula
=BUSCAR(2;1/(F1:F10007<>"");F1:F10007)
Adáptala a tus rangos y hace lo que pides
Creo que no me expliqué todo lo claro que necesito, no necesito el valor de la ultima fila sino el numero de la ultima fila que tenga datos en la hoja (p.e. si la ultima fila con datos fuera la de la celda A750, necesito el numero 750)
He conseguido como se selecciona la ultima fila
(Cells(ActiveSheet.UsedRange.Rows.Count, 1).Select
pero no consigo aplicar el numero de esta ultima fila a mi macro, que hace algo entre las filas 5 y 1850 (For Fila = 5 To 1850), la cuestion es que la tengo que aplicar a otros rangos, p.e entre las filas 5 y 400, o 5 y 2300,  dependiendo de los datos que tenga el archivo donde se aplique.
Una cosa fija es que siempre empieza en la fila 5 y debe de hacerlo hasta la ultima fila donde haya datos.
El otro evento (While ActiveCell.Row <= 1850) lo aplico en otro macro para que haga algo en tanto que el numero de fila sea igual o menor de 1850, pero al igual que el anterior el rango a aplicar es variable, por lo que necesito el numero (no el valor) de la ultima fila con datos
Espero haber aclarado mi pregunta
Gracias de todos modos
Otra vez
Si lo que quieres es el numero de filas con datos usa la fórmula
=CONTAR(A5:A500)
si lo que quieres es el numero de filas contando tambien celdas en blanco esta otra
=CONTAR(A5:A500)+CONTAR.BLANCO(A5:A500)
y por ultimo si lo que quieres es la situacion de la ultima fila con datos
=DIRECCION(SUMAPRODUCTO(MAX((FILA(A1:A65535)*(A1:A65535<>""))));1)
Esta fórmula te suma tanto texto como números si la quieres más sencilla si por ejemplo solo tienes números
=DIRECCION(COINCIDIR(9,9999999999999E+307;A:A);2)
si solo tiene texto
=DIRECCION(COINCIDIR("*";A:A;-1);1)
Disculpa mi torpeza, pero lo que necesito es cambiar el valor (1850) que aparece en el renglón nº 6, por el numero que sea la ultima fila de la hoja, p.e. si la últuma fila con datos de la hoja es J2550, el evento debería realizarse entre las filas 5 y 2550.
Seria algo como For Fila = 5 to (Cells(ActiveSheet.UsedRange.Rows.Count, 1).Address)
por supuesto que asi no funciona, me podrias ayudar
Sub Desplazar_izquierda()
 'Desplazar los Comentarios de la columna E  
Range("B4").Select
Dim valor As Variant
Dim Fila As Integer, Columna As Integer
       Columna = 5
     For Fila = 5 To 1850    'Revisar numero de filas
        If Cells(Fila, Columna).Value <> "" Then
        Cells(Fila, Columna).Offset(0, -2).Value = Cells(Fila, Columna).Value
        Cells(Fila, Columna).Offset(0, -2).Select
            With Selection
             .HorizontalAlignment = xlLeft
             .IndentLevel = 2
            End With
        Cells(Fila, Columna).Value = ""
         End If
    Next
Range("B7").Select
Gracias por todo
Realmente no acabo de entender lo que pretendes
Creo que sera mejor que me mandes el archivo y en el me indicas los rangos que quieres modificar y de donde sacas los criterios
[email protected]
Lo que necesito es una variable que recoja la referencia de la ultima fila con datos tal como:
Filaultima = Cells(ActiveSheet.UsedRange.Rows.Count, 1).Row
Muchas gracias por tu ayuda
Recibe mi más cordial agradecimiento

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas