Como determinar la primer y útlima fila de la selección




Me preguntan en un pos como determinar la primer y última celda de un un rango seleccionado, esto es importante saberlo cuando se requiere hacer un bucle ya se usando for.. next, while ... wend o cualquier otra forma de realizar un bucle o a veces es necesario para aplicar un formato en una selección, en este post te muestro como colocar en una variable la primer y última fila de selección o un rango seleccionado.

Si quieres aprender o profundizar  sobre el manejo de hojas de Excel, te recomiendo que leas un excelente libro sobre Excel el que te ayudará manejar las planillas de cálculo, debes hacer click acá, si quieres un libro sobre Excel, en inglés, entonces debes hacer click acá. Si lo que necesitas es aprender o profundizar sobre la programación de macros con VBA este es unos de los mejores curso que he visto en internet.


MASTERCARD PAYONEER

Desde el link del final podrás  bajar el archivo de ejemplo y adaptarlo a tus necesidades, el código es libre y no tiene ningún tipo de restricción.

Para determinar la primer fila de un rango seleccionado y poner dicho valor en una variable, en este caso es r2; se usa el siguiente código:

 r2 = Selection.Cells(1, 1).Row

Ahora para saber cual es la última fila de la selección, se usa este otro código, también se agrega el valor en una variable en este caso r3:

r3 = Selection.Cells(Selection.Cells.Rows.Count, 1).Row

En el ejemplo macro que se agrega en el post y denominado como determinar la primer y última fila de la selección o rango, primero se determina la primer y última fila luego se pinta el rango seleccionado de color rojo, si se observa el código, éste realiza un bucle que va desde la primer hasta la última fila seleccionada y para pintarla de color rojo, de más está decir que se puede utilizar para un sin número de procedimientos, el fin del post es enseñar como se determina la primer y última fila de la selección.



Código que se inserta en un módulo

Sub selecciona()
Dim r1, r2 As String
 r2 = Selection.Cells(1, 1).Row
 r3 = Selection.Cells(Selection.Cells.Rows.Count, 1).Row
 Range("C:C").Interior.Pattern = xlNone
 For filazzz = r2 To r3
 Cells(filazzz, 3).Interior.Color = 255
 Next filazzz
End Sub




Si te fue de utilidad puedes INVITARME UN CAFÉ y de esta manera ayudar a seguir manteniendo la página, CLICK para descargar en ejemplo en forma gratuita.



If this post was helpful INVITE ME A COFFEE and so help keep up the page, CLICK to download free example.


Si te gustó por favor compártelo con tus amigos
If you liked please share it with your friends