Buscar en Ayuda Excel:

Insertar un procedimiento

Ya hemos dicho que un procedimiento es un bloque de instrucciones de código que sirven para llevar a cabo alguna tarea específica. Un procedimiento empieza siempre con la instrucción

Sub Nombre_Procedimiento

Y termina con la instrucción

End Sub.

A continuación crearemos un procedimiento para poner el texto "Hola" en la casilla A1.

  • Ejemplo 1

 

Sub Primero()

Range("A1").Value = "Hola"

End Sub

Observe el código.

Range("A1").Value="Hola"

En esta línea estamos indicando que trabajamos con un objeto Range. Para indicarle que nos referimos a la casilla A1, encerramos entre paréntesis esta referencia (más adelante verá otra forma de referirnos a las casillas). De este objeto, indicamos que queremos establecer un nuevo valor para la propiedad Value, observe que para separar el objeto de su propiedad utilizamos la notación punto.

Recuerde que el conjunto Range es un objeto que pende del objeto WorkSheets, así por ejemplo el siguiente código haría lo mismo que el anterior.

WorkSheets(1).Range("A1").Value = "Hola"

Bueno, de hecho no hace lo mismo, en la primera opción, el texto "Hola" se pone dentro de la casilla A1 de la hoja activa, mientras que en el segundo es en la casilla A1 de primera hoja ( del conjunto de hojas). La segunda notación es más larga, pero también más recomendable ya que se especifican todos los objetos. En muchas ocasiones se pueden omitir algunos objetos precedentes, no le aconsejamos hacerlo, sus programas perderán claridad y concisión.

Si desea hacer referencia a la hoja activa puede utilizar ActiveSheet, así, el primer ejemplo lo dejaremos de la manera siguiente.

Sub Primero()

ActiveSheet.Range("A1").Value = "Hola"

End Sub

Si desea poner "Hola" (o cualquier valor) en la casilla activa, puede utilizar la propiedad (objeto) Activecell de WorkSheets. Así para poner "Hola" en la casilla activa de la hoja activa seria,

Sub Primero()

ActiveSheet.ActiveCell.Value = "Hola"

End Sub

Para terminar con este primer ejemplo. WorkSheets están dentro del Objeto WorkBooks (libros de trabajo) y WorkBooks están dentro de Application. Application es el objeto superior, es el que representa la aplicación Excel. Así, el primer ejemplo, siguiendo toda la jerarquía de objetos quedaría de la forma siguiente.

Sub Primero()

Application.WorkBooks(1).WorkSheets(1).Range("A1").Value = "Hola"

End Sub

Insistiendo con la nomenclatura, Application casi nunca es necesario especificarlo, piense que todos los objetos dependen de este, WorkBooks será necesario implementarlo si en las macros se trabaja con diferentes libros de trabajo (diferentes archivos), a partir de WorkSheets, es aconsejable incluirlo en el código, sobre todo si se quiere trabajar con diferentes hojas, verá, sin embargo, que en muchas ocasiones no se aplica.


Technorati Tags:
Distribuir contenido


Cursos Excel · Manual básico · Tutoriales Excel · Foro Excel · Enlaces y recursos · VBA Excel · Plantillas Excel · Nota legal · Contacta