En un 95% de los casos en los cuales utilicemos macros trabajaremos sobre las celdas, por cuanto resulta fundamental aprender a referenciarlas correctamente. Hay muchas, pero veremos las mas sencillas.
[+/-] Ver el resto / Ocultar
1) Range(“nombre_de_la_celda”): muy fácil. Escribimos Range(“A1”), SIEMPRE respetando las comillas y luego la acción que realizaremos sobre la misma: Range(“A1”).Select ‘para seleccionarla; Range(“C5”).Font.Bold = True ‘para formatearla con “negrita”; Range(“A2:A10”).EntireRow.Delete ‘borrar todas las filas comprendidas entre A2 y A10.
2) Cells(numero_de_fila, numero_de_columna): esto es un poco mas complicado. Partimos de la siguiente premisa: nos olvidamos que las columnas son letras, y las reemplazamos por números. Aquí trabajaremos exclusivamente con corrdenadas Así, el código: Cells(1,1) hace referencia a la celda comúnmente conocida como A1. (numero de fila=1, numero de columna=1). Entonces Cells(3,5) es = Range(“E5”) y Cells(10,2) = Range(“B10”). Y así sucesivamente. Dicen los entendidos que Excel trabaja “mejor” de esta forma, pero habría que hilar muy fino para corroborar tal cosa. Si es mucho mas práctico a la hora de utilizar estructuras repetitivas (bucles), los cuales veremos en otros ejemplos.
3) Cells(numero_de_fila, letra_de_columna): para los que no se puedan “ambientar” al punto 2, aquí les traigo un “híbrido”: primero señalamos el numero de fila y luego, la letra de la columna. Cells(2,”A”) = Range(“A2”), Cells(2, “C”) = Range(“C2”). Fácil, aunque la práctica y experiencia me han enseñado que mejor aprendemos bien la forma detallada en el punto 2.
4) NombrarRangos: si, a los rangos o celdas le podemos personalizar su nombre, de una manera muy fácil:nos dirigimos al borde izquierdo de la pantalla, al lado de la barra de fórmulas, y veremos que existe un pequeño cuadro que refleja el nombre de la celda sobre la cual estamos posicionados:
ahora hacemos click sobre ese cuadro (tan mal redondeado por mí con un globo azul) y le escribimos el nombre que deseamos otorgarle:
Vimos como referencia una celda. Ahora, la estructura para los rangos (conjunto de celdas):
1) Range(“celda1:celda2”): noten que el signo : separa las dos celdas. Queda sencillo: Range(“A1:A100”), Range(“C5:Z150”), etc, etc.
2) Range( Cells(1,1) , Cells(3,3) ): simplemente lo muestro, por ahora no recomiendo que se pongan a descifrarlo, ya que nos alcanzará con el punto 1), por lo menos durante el primer tiempo. Lo escrito sería: Range(“A1:C3”). Analicen un poco y se darán cuenta.
No olvidemos el objetivo de este post: como “llamar” a las celdas desde VBA, con la mira puesta en interactuar con ellas, ordenándoles que se pinten de un color, se eliminen, se sumen, se ordenen, etc, etc, etc... y miles de ect’s mas.
[+/-] Ver el resto / Ocultar
1) Range(“nombre_de_la_celda”): muy fácil. Escribimos Range(“A1”), SIEMPRE respetando las comillas y luego la acción que realizaremos sobre la misma: Range(“A1”).Select ‘para seleccionarla; Range(“C5”).Font.Bold = True ‘para formatearla con “negrita”; Range(“A2:A10”).EntireRow.Delete ‘borrar todas las filas comprendidas entre A2 y A10.
2) Cells(numero_de_fila, numero_de_columna): esto es un poco mas complicado. Partimos de la siguiente premisa: nos olvidamos que las columnas son letras, y las reemplazamos por números. Aquí trabajaremos exclusivamente con corrdenadas Así, el código: Cells(1,1) hace referencia a la celda comúnmente conocida como A1. (numero de fila=1, numero de columna=1). Entonces Cells(3,5) es = Range(“E5”) y Cells(10,2) = Range(“B10”). Y así sucesivamente. Dicen los entendidos que Excel trabaja “mejor” de esta forma, pero habría que hilar muy fino para corroborar tal cosa. Si es mucho mas práctico a la hora de utilizar estructuras repetitivas (bucles), los cuales veremos en otros ejemplos.
3) Cells(numero_de_fila, letra_de_columna): para los que no se puedan “ambientar” al punto 2, aquí les traigo un “híbrido”: primero señalamos el numero de fila y luego, la letra de la columna. Cells(2,”A”) = Range(“A2”), Cells(2, “C”) = Range(“C2”). Fácil, aunque la práctica y experiencia me han enseñado que mejor aprendemos bien la forma detallada en el punto 2.
4) NombrarRangos: si, a los rangos o celdas le podemos personalizar su nombre, de una manera muy fácil:nos dirigimos al borde izquierdo de la pantalla, al lado de la barra de fórmulas, y veremos que existe un pequeño cuadro que refleja el nombre de la celda sobre la cual estamos posicionados:
ahora hacemos click sobre ese cuadro (tan mal redondeado por mí con un globo azul) y le escribimos el nombre que deseamos otorgarle:
verán ahora que no se llama mas "B3", ahora la celda se llama "damianExcel"... y para referenciarla es muy sencillo: Range("damianExcel")
en próximas entradas observaremos la gran herramienta que esto nos supone, por que se nos hace factible nombrar rangos, tablas, etc, etc, etc. Un dato: Excel no acepta nombres repetidos.
Vimos como referencia una celda. Ahora, la estructura para los rangos (conjunto de celdas):
1) Range(“celda1:celda2”): noten que el signo : separa las dos celdas. Queda sencillo: Range(“A1:A100”), Range(“C5:Z150”), etc, etc.
2) Range( Cells(1,1) , Cells(3,3) ): simplemente lo muestro, por ahora no recomiendo que se pongan a descifrarlo, ya que nos alcanzará con el punto 1), por lo menos durante el primer tiempo. Lo escrito sería: Range(“A1:C3”). Analicen un poco y se darán cuenta.
No olvidemos el objetivo de este post: como “llamar” a las celdas desde VBA, con la mira puesta en interactuar con ellas, ordenándoles que se pinten de un color, se eliminen, se sumen, se ordenen, etc, etc, etc... y miles de ect’s mas.
- Obtener enlace
- Correo electrónico
- Otras aplicaciones
Etiquetas
Macros
Etiquetas:
Macros
- Obtener enlace
- Correo electrónico
- Otras aplicaciones
Comentarios
Publicar un comentario