/ / Recorrer libros y hojas en Excel VBA

Recorrer libros y hojas en Excel VBA

A continuación veremos un programa en Excel VBA ese recorre todos los libros abiertos y hojas de trabajo, y muestra todos los nombres.

Situación:

Bucle a través de libros y hojas de ejemplo

Agregue las siguientes líneas de código al botón de comando:

1. Primero, declaramos dos objetos y una variable. Un objeto de tipo Libro de trabajo que llamamos libro, un objeto de tipo Hoja de trabajo que llamamos hoja y una variable de tipo Cadena que llamamos texto.

Dim book As Workbook, sheet As Worksheet, text As String

2. Queremos recorrer todos los libros abiertos. Para lograr esto, agregue la siguiente línea de código:

For Each book In Workbooks

3. Escribimos el texto "Libro de trabajo:", el nombre del libro de trabajo y el texto "Hojas de trabajo:" en el texto variable.

text = text & "Workbook: " & book.Name & vbNewLine & "Worksheets: " & vbNewLine

Nota: puede utilizar el operador & para concatenar (unir) elementos. Para iniciar una nueva línea, puede usar vbNewLine.

4. Para recorrer todas las hojas de trabajo de un libro, agregue la siguiente línea de código:

For Each sheet In book.Worksheets

5. Escribimos los nombres de las hojas de trabajo de un libro de trabajo en el texto variable.

text = text & sheet.Name & vbNewLine

6. Cierre el segundo bucle.

Next sheet

7. Agregue una línea blanca.

text = text & vbNewLine

8. No te olvides de cerrar el primer bucle.

Next book

9. Finalmente, mostramos el texto variable usando un MsgBox.

MsgBox text

10. Probar el programa. Antes de hacer clic en el botón de comando, asigne a sus hojas de trabajo algunos nombres descriptivos y abra otro libro en blanco.

Resultado:

Recorrer libros y hojas en Excel VBA

Lea también: