Excel 2016 VBA esencial

Acciones con rangos de celdas con VBA

¡Prueba gratis durante 10 días

nuestros 1240 cursos !

Prueba gratis Mostrar modalidades de suscripción
En este vídeo conoceremos la forma de hacer referencia a rangos de celdas para aplicar métodos o, lo que es lo mismo, acciones. Este es uno de los vídeos más importantes en la transición desde la grabación de macros hasta la programación.

Transcripción

En este video vamos a ver siete acciones con rangos de celdas. Lo importante no estará en los métodos y propiedades que vamos a utilizar en los ejemplos, sino en las formas de hacer referencia a los rangos de celdas. El dominio de estas distintas formas de referirnos a celdas o rangos, es muy importante porque nos dará flexibilidad y versatilidad a la hora de programar. Si a la forma de hacer referencia a celdas la dominamos, los métodos y propiedades que es posible aplicar a cada objeto, las podremos consultar con relativa facilidad en la ayuda de Visual Basic. Por lo tanto, comencemos con los ejemplos. Tenemos en primer lugar una macro, acciones con rangos 1, en la que podemos ver una forma de hacer referencia a un rango de celdas. Mediante el objeto 'Range', y entre paréntesis, y entre comillas, ponemos las referencias a celdas, desde la primera hasta la última, y todo separado por dos puntos. El significado de este código es que, a este rango, se le va a aplicar este valor. Este valor coincide que es el de la celda A1. Así que, si ejecutáramos esta macro, por ejemplo, estando situados dentro de ese código, y presionando F5, veríamos el resultado a la izquierda. Otra forma de hacer referencia a rangos la tenemos en la segunda macro. Estamos utilizando el objeto 'Range', pero esta vez, estamos haciendo referencia a un rango discontinuo. Por un lado, tenemos las celdas que van desde A3 a C3, y por otro lado celdas que van desde A7 a C7. Vemos como esos rangos no son contiguos y tienen que ir separados por una coma. Para este ejemplo, hemos utilizado el método 'Clear', que, al ejecutar la macro, vemos como hace su trabajo y limpia esos rangos. Ahora tenemos una forma todavía más distinta de hacer referencia a celdas. Se trata de la propiedad 'Cells'. Esta instrucción necesita dos argumentos entre paréntesis. El primero de ellos hace referencia al número de fila de la hoja. Y el segundo argumento, al número de columna. Aquí, insistimos, que hay que destacar la forma de hacer referencia a filas y columnas. Si con los métodos anteriores utilizábamos letras para las columnas y números para las filas, aquí es radicalmente distinto. Así que, vamos a comprobar esta macro que concretamente utiliza el método 'Copy'. Presionamos F5, y vemos cómo la celda queda remarcada indicando que está copiada al portapapeles. Vamos ahora con la cuarta macro. Tenemos otra forma de hacer referencia a celdas. Esta vez también es mediante el objeto 'Range', pero esta vez, en vez de hacer referencia a celdas mediante letra y número, ahora incluimos antes de una coma, una propiedad 'Cells' que ya la hemos estudiado anteriormente, y después de una coma, otra propiedad 'Cells'. De alguna forma, la primera de las propiedades 'Cells', está aportando una coordenada, porque hace referencia a una celda, y la segunda de las propiedades 'Cells', está aportando otra coordenada distinta. Entre la primera y la segunda coordenada, es la zona a la que está haciendo referencia 'Range'. En este caso, esta línea de código utiliza el método 'Select', y vamos a comprobarlo, así que presionamos F5, y ahí tenemos el resultado. Y vamos con la quinta macro. En este caso se hace referencia a un rango de celdas que en este caso, es solo una, mediante un nombre de rango. Vemos como el nombre de rango es 'FechaHoy' y va entre corchetes. Es evidente que, para este caso, debe existir ese nombre de rango en Excel. Vamos a comprobarlo desde la ficha 'Fórmulas', y dentro de 'Nombres definidos', 'Administrar nombres'. Vemos como aquí está nuestro nombre de rango 'FechaHoy'. Así que si ejecutamos esta macro, lo que vamos a conseguir es asignar un valor al rango representado por el nombre 'FechaHoy' que va a ser igual a la fecha de hoy. Vamos a ejecutar mediante F5, y aquí tendríamos esa fecha. Ahora vayamos con la sexta macro, en la que podemos ver una forma de hacer referencia a celdas mediante 'ActiveCell', que se está refiriendo a la celda que en el momento de ejecutarse la línea de código, esté activa. Por ejemplo, si activamos esta celda. y ahora ejecutamos el código, lo que nos diga el código se va a realizar en la celda que en ese momento estaba activa. Por lo tanto, en B17. Y por último, un método algo más complicado, pero vamos con él. La primera de las líneas ya la conocemos, utiliza la propiedad 'Cells' y después el método 'Copy'. Es decir que la celda D1, va a queda copiada al portapapeles. Después tenemos otra línea de código, donde nos dice que con la celda activa, vamos a considerar un desplazamiento, es decir 'Offset', de dos filas hacia abajo y dos columnas a la derecha. Por lo tanto, desde 'ActiveCell' hasta 'Offset (2,2)', esto es la referencia a un rango. Por ejemplo, si consideramos que la celda activa va a ser D1, el rango al que se hace referencia sería desde D1, una y dos filas hacia abajo, y una y dos columnas hacia la derecha. Por lo tanto, F3 sería nuestra celda de referencia, o el rango al que nos estamos refiriendo con este objeto. El resto de código sería un método 'PasteSpecial', que lo que hace es pegar los valores, que pudiera haber en el portapapeles. En este caso, era solamente la celda D1. Vamos a situarnos también en esa celda, y a ejecutar la macro. Nos situamos también sobre el código y presionamos F5. Y aquí tenemos el resultado.

Excel 2016 VBA esencial

Aprende desde cero el lenguaje VBA con el que podrás automatizar, acelerar muchas tareas cotidianas en Excel y escribir rutinas de código aplicables a tu trabajo cotidiano.

2:26 horas (42 Videos)
Actualmente no hay comentarios.
 

Este curso video2brain está disponible como descarga y para ser visualizado online. ¡Pero no hace falta que decidas entre las dos opciones! Al comprar el curso, disfrutarás de ambas posibilidades.

La descarga te permite ver las lecciones sin estar conectado/a a internet y supone una navegación fácil y ágil entre capítulo y capítulo. Si vas a trabajar en diferentes ordenadores o si no quieres descargarte el curso completo, entra en la web con tus datos de acceso y disfruta directamente de tus vídeos online. Te deseamos que disfrutes de este curso y te resulte de mucha utilidad.

Estamos a tu disposición si tienes cualquier tipo de duda o pregunta.