Excel - enviar valor a ultima celda

   
Vista:

enviar valor a ultima celda

Publicado por Bekyna (50 intervenciones) el 09/03/2009 21:00:42
Por medio de una macro envió un valor a una celda, y necesito que los valores se estén llenando en celdas continuas, una inmediatamente después de la otra, pero no se hacerlo, siempre que quiero enviar una valor lo envió a una celda especifica y a ahora lo que necesito es que mis valores se vayan siempre a la ultima celda.

Nota: No se cual es la ultima celda, ese dado va ha estar cambiando constantemente y no se le puedo pedir al usuario porque son muchos datos los que se tienen que enviar y va ha ser tedioso, porque el mismo no va ha saber cual es la ultima celda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:enviar valor a ultima celda

Publicado por Abraham Valencia (2418 intervenciones) el 10/03/2009 01:25:01
Range("A65536").End(xlUp).Offset(1,0) = "lo que quieras"

Abraham
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:enviar valor a ultima celda

Publicado por Santiago (193 intervenciones) el 10/03/2009 05:17:04
Hola Abraham, esta respuesta es correcta pero todos deberian utilizar otra forma porque Excel 2007 tiene mas de 1 millon de filas. Bueno le doy para todos :)

Sub Ir_Ultima_celda()
fila=2 'desde la fila 2
do while cells(fila,1)<>empty
fila=fila+1
loop
cells(fila,1).select ' para ir a ultima celda
End Sub

Un saiudo desde Ambato, Ecuador
SCM :)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:enviar valor a ultima celda

Publicado por Abraham Valencia (2418 intervenciones) el 10/03/2009 06:09:25
Hola Santiago:

- De tener Excel 2007, simplemente se deberia reemplazar el 65536 por el numero correspondiente (1048576)
- Yo siempre asumo que los usuarios NO tienen Excel 2007.
- El metodo que usas con un Bucle que va de "arriba" hacia "abjo" evaluando y buscando una celda vacias, es varias veces mas lento que el equivalente en VBA ha usar un atajo de teclado como el que yo envio, por lo que yo no lo recomendaria
- Hay otras formas de encontrar la primera celda vacia, pero, creo que la que propongo no es tan lenta y es facil de entender

Saludos

Abraham
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JuanC

RE:enviar valor a ultima celda

Publicado por JuanC (1053 intervenciones) el 10/03/2009 13:54:31
me sumo a la 'polémica'...

Range("A" & Cells.Rows.Count).End(xlUp).Offset(1,0) = "lo que quieras"

obviamente que este método es más rápido que el que utiliza un bucle,
pero también es cierto que no es 100% confiable...
hasta ahora lo más seguro y rápido que encontré es usar

SpecialCells junto a el método Find(What:="*", SearchDirection:=xlPrevious)

Saludos desde Baires, JuanC
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:enviar valor a ultima celda

Publicado por Santiago (193 intervenciones) el 10/03/2009 18:32:55
Es muy interesante de esta tema,

Si quieres ir a la ultima celda en la columna B:
Cells(Cells.SpecialCells(xlCellTypeLastCell).Row + 1, 2).Select

Un saludo desde Ambato, Ecuador
SCM
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar