Перебор книг и листов в Excel VBA
Ниже мы рассмотрим программу в Excel VBA, которая перебирает все открытые рабочие книги и рабочие листы, и отображает все имена.
Ситуация:
Добавьте следующие строки кода к командной кнопке:
-
Во-первых, мы объявляем два объекта и одну переменную. Один объект типа Workbook мы называем книгу, один объект типа Worksheet мы называем лист, и переменную типа String, мы называем текст.
Dim book As Workbook, sheet As Worksheet, text As String
-
Мы хотим, чтобы перебрать все открытые рабочие книги. Для достижения этой цели, добавьте следующую строку кода:
For Each book In Workbooks
-
Пишет текст «Workbook:», название книги, и текст «Worksheets:„“к тексту переменной
text = text & "Workbook: " & book.Name & vbNewLine & "Worksheets: " & vbNewLine
-
Примечание: вы можете использовать и оператор для конкатенации (присоединиться) элементы Чтобы начать новую строку, вы можете использовать vbNewLine
-
Для перебора всех рабочих листов рабочей книги, добавьте следующую строку коды:..
-
For Each sheet In book.Worksheets
5 . Мы пишем имена рабочих листов рабочей книги переменного текст.
text = text & sheet.Name & vbNewLine
-
Закройте второй цикл.
Next sheet
-
Добавьте белую линию.
text = text & vbNewLine
-
не забудьте закрыть первую петлю.
Next book
-
Наконец, мы выводим текст переменной с помощью MsgBox.
.
MsgBox text
-
Тестирование программы Перед тем, как нажать на кнопку команды, дать свои рабочие листы некоторые описательные имена и открыть пустую книгу с тремя листами
Результат:.