Última celda de Range rango

18/12/2006 - 18:01 por nvalencia | Informe spam
Buenas a todos, mi problema es que tengo una variable de tipo Range,
llamada codigos.
En esta variable se encuentra el rango seleccionado por el usuario,
solicitada por una macro,
Y me gustaría saber cuál es la última celda del rango.
Muchas gracias de antemano

Preguntas similare

Leer las respuestas

#6 Ivan
18/12/2006 - 22:46 | Informe spam
lo primero, disculpas por el nº de post, en parte ha sido una
jugarreta de el ¿servidor?

hola ST

si no me equivoco, UsedRange hace referencia al rango con/sobre el que
se ha trabajado en la sesion actual, que incluso puede contener filas
columnas ya eliminadas y/o en blanco, y no tendria nada que ver con
rangos seleccionados (salvo que coincidan, bien por azar, bien con algo
como .usedrange.select)

¿no te ha pasado nunca que has eliminado unas filas, y teniendo solo
datos en, pej, la fila 1, le has dado a Ctrl+Fin y te ha seleccionado
la ultima celda previa a la eliminacion de las filas, aunque no tenga
datos? pues, si no me equivoco, y si es asi estaria encantado de que me
corrigieras/an, ese es el usedrange. No se si se aplica siempre, pero
por pej, si has dado algun tipo de formato creo que si

en cualquier caso Usedrange podria ser ='a1:z1000' y selection (rango
seleccionado) = 'a1', o cualquier otro, incluso, si todavia no has
introducido datos ni formatos, y de nuevo si no me equivoco, estar
fuera de usedrange

bueno, al menos esto es lo que creo

en cualquier caso un saludo y hasta pronto
Ivan
Respuesta Responder a este mensaje
#7 nvalencia
19/12/2006 - 10:20 | Informe spam
Gracias a los 2 me ha servido de mucha ayuda.
Un saludo
Ivan ha escrito:

lo primero, disculpas por el nº de post, en parte ha sido una
jugarreta de el ¿servidor?

hola ST

si no me equivoco, UsedRange hace referencia al rango con/sobre el que
se ha trabajado en la sesion actual, que incluso puede contener filas
columnas ya eliminadas y/o en blanco, y no tendria nada que ver con
rangos seleccionados (salvo que coincidan, bien por azar, bien con algo
como .usedrange.select)

¿no te ha pasado nunca que has eliminado unas filas, y teniendo solo
datos en, pej, la fila 1, le has dado a Ctrl+Fin y te ha seleccionado
la ultima celda previa a la eliminacion de las filas, aunque no tenga
datos? pues, si no me equivoco, y si es asi estaria encantado de que me
corrigieras/an, ese es el usedrange. No se si se aplica siempre, pero
por pej, si has dado algun tipo de formato creo que si

en cualquier caso Usedrange podria ser ='a1:z1000' y selection (rango
seleccionado) = 'a1', o cualquier otro, incluso, si todavia no has
introducido datos ni formatos, y de nuevo si no me equivoco, estar
fuera de usedrange

bueno, al menos esto es lo que creo

en cualquier caso un saludo y hasta pronto
Ivan
Respuesta Responder a este mensaje
#8 Ivan
19/12/2006 - 10:29 | Informe spam
hola

no olvides tener en cuenta lo que te comenta Hector Miguel, en tu otro
hilo, sobre la posibilidad de rangos discontinuos

un saludo
Ivan
Respuesta Responder a este mensaje
#9 ST
19/12/2006 - 16:24 | Informe spam
Hola Ivan
en cuanto a tu planteamientos te comento lo sig:

si no me equivoco, UsedRange hace referencia al rango con/sobre el que
se ha trabajado en la sesion actual, que incluso puede contener filas
columnas ya eliminadas y/o en blanco, y no tendria nada que ver con
rangos seleccionados (salvo que coincidan, bien por azar, bien con algo
como .usedrange.select)



Respuesta.-la misma ayuda de excel dice que es el rango "utilizado" en
la Hoja de calculo


¿no te ha pasado nunca que has eliminado unas filas, y teniendo solo
datos en, pej, la fila 1, le has dado a Ctrl+Fin y te ha seleccionado
la ultima celda previa a la eliminacion de las filas, aunque no tenga
datos? pues, si no me equivoco, y si es asi estaria encantado de que me
corrigieras/an, ese es el usedrange. No se si se aplica siempre, pero
por pej, si has dado algun tipo de formato creo que si



Respuesta.-Si y No,,je,,je,,je,veamos con una prueba que realice:
supongase que tines diferentes rangos dicontinuos
A1:C7,C13:D14,G5:H6,H8,H15,G17
si tu pulsa Ctrl+fin no se posicionara en G17,sino es H17 [puedes
probara :D ]
de tasl mabnera que usedarange establece el "area trabajada" ,inclusive
comom comentas tu aunque se haya borrado la informacion de algunas
celdas.

pero si observas bien [si haces el ejemlpo,mejor],usedrange abarca una
celda sobre la cual no se trabajo nunca èn este caso "H17",curioso
verdad ??,pues la ultima celda que tenia datos fue la G17,pero como la
ultima celda de la ultima columna fue H15,usedrange "Cuadro" el rango
[èsto no lo digo por sapiensa sino por el resultado que me arrojo el
experimento]
En sintesis usedrange segun mi interpretacion toma la ultima fila y
columna para determinar el area sobre la cula se trabajo:

ultima celda:17
ultima columna:H
usedrange=H17


en cualquier caso Usedrange podria ser ='a1:z1000' y selection (rango
seleccionado) = 'a1', o cualquier otro, incluso, si todavia no has
introducido datos ni formatos, y de nuevo si no me equivoco, estar
fuera de usedrange

bueno, al menos esto es lo que creo



Respuesta.-sin comentarios =)


por ultimo,que deberia ser lo primero:
Dado que el rango ya esta "Nombrado", a nuestro peticionario le
funcionaria esta modificacion y no importa si dicho rango esta
seleccionado o no:

Sub UltimaCelda_delRango()
With [RangoST] 'perdon aqui cambia el nobre de tu rango =)
MsgBox .Cells(.Cells.Count).Address(0, 0)
End With
End Sub

lo de un rango Nombrado con celdas discontinuas no lo habia tomado en
cuenta asi que pasare de este post al de H.Miguel para ser ahora
instruido por nuestro buen y excelente teacher ,toda vez que en los
primeros intentos no obtuve resultados positivos :((

Salu2
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida