Más información sobre el objeto libros y hojas en Excel VBA.

objeto de la jerarquía

En Excel VBA, un objeto puede contener otro objeto, y ese objeto puede contener otro objeto, etc. En otras palabras, la programación de Excel VBA implica trabajar con una jerarquía de objetos. Esto probablemente suena bastante confuso, pero vamos a dejar claro.

La madre de todos los objetos en sí es Excel. Lo llamamos el objeto Application. El objeto de aplicación contiene otros objetos. Por ejemplo, el objeto de libro (archivo Excel). Esto puede ser cualquier libro que haya creado.

El objeto libro contiene otros objetos, como el objeto de hoja. El objeto de hoja contiene otros objetos, como el objeto Range.

El enlace: / VBA-crear-a-macro [Crear una macro] capítulo ilustra cómo ejecutar código haciendo clic en un botón de comando. Se utilizó la siguiente línea de código:

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

pero lo que en realidad quería decir era:

Application.Workbooks("create-a-macro").Worksheets(1).Range("A1").Value = "Hello"

Nota: los objetos están conectados con un punto. Afortunadamente, no tenemos que añadir una línea de código de esta manera. Esto es así porque nos pusieron a nuestro botón de comando en `enlace: /vba-excel-files-create-a-macro.xls [Create-A-macro.xlsm] ‘, en la primera hoja. Tenga en cuenta que si quieres cambiar las cosas en diferentes hojas de cálculo, que tiene que incluir el objeto de hoja. Leyendo.

Colecciones

Usted puede haber notado que libros y hojas son a la vez plural. Esto es debido a que son colecciones. La colección de libros de trabajo contiene todos los objetos libro que están actualmente abiertos. La colección Hojas de trabajo contiene todos los objetos de la hoja de cálculo en un libro.

Worksheet Names

Se puede hacer referencia a un miembro de la colección, por ejemplo, un único objeto de hoja, de tres maneras.

  1. Utilizando el nombre de la hoja.

Worksheets("Sales").Range("A1").Value = "Hello"
  1. Usando el número de índice (1 es la primera hoja de cálculo a partir de la izquierda).

Worksheets(1).Range("A1").Value = "Hello"
  1. Usando el nombre en clave.

Sheet1.Range("A1").Value = "Hello"

Para ver el nombre en clave de una hoja de trabajo, abra el `enlace: / VBA-crear a un macro # visual-basic-editor de [Editor de Visual Basic] ‘. En el Explorador de proyectos, el primer nombre es el nombre en clave. El segundo nombre es el nombre de la hoja (Sales).

CodeName

Nota: el nombre en clave sigue siendo el mismo si cambia el nombre de la hoja o el orden de las hojas de trabajo por lo que esta es la forma más segura de hacer referencia a una hoja de cálculo. Haga clic en Ver, Ventana Propiedades para cambiar el nombre en clave de una hoja de trabajo. Hay una desventaja, no se puede utilizar el nombre en clave si hace referencia a una hoja de cálculo en un libro diferente.

propiedades y métodos

Ahora vamos a echar un vistazo a algunas de las propiedades y métodos de la colección de libros y hojas. Las propiedades son algo, que tiene una colección (que describen la colección), mientras que los métodos hacen algo (que llevan a cabo una acción con una colección).

Coloque un enlace: / VBA crear a un macro-#-botón de comando [botón de comando] en su hoja de trabajo y añadir las líneas de código:

  1. El método Add de la colección de libros crea un nuevo libro.

Workbooks.Add

Nota: el método Add de la colección Hojas de trabajo crea una nueva hoja de cálculo.

  1. La propiedad Count de la colección Hojas de trabajo cuenta el número de hojas de un libro.

MsgBox Worksheets.Count

Como resultado al hacer clic en el botón de comando en la hoja:

Count Property in Excel VBA

Nota: la propiedad Count de la colección de libros de trabajo cuenta el número de libros de activos.