Вы можете использовать New Window кнопку ленты (в View вкладки), чтобы создать дополнительные окна для книги:
Если книга имеет 4 открытые окна, его коллекция Workbooks
будет содержать 4 объекта - вы можете проверить, что в ближайшей панели (Ctrl + G):
?ThisWorkbook.Windows.Count
4
Ваш код взят-в-книга есть ошибка: он не возвращает число видимых книг, как он утверждает. Скорее, он возвращает количество книг, где видно окно 1.
Держите 4 окна открыты, и скрыть первый один:
ThisWorkbook.Windows(1).Visible = False
Это все еще там, и ThisWorkbook
до сих пор видны ... но ваша функция будет считать, что учебное пособие «невидимая «потому что первое окно скрыто.
(1)
Это является индекс, индекс - это синтаксис VBA для доступа элементов в массиве или коллекции.
Dim items As New Collection
items.Add "a"
items.Add "b"
items.Add "c"
Debug.Print items(1) 'prints "a"
Windows
представляет собой коллекцию свойство Workbook
объекта, содержащий Window
экземпляры объектов - так wkbBook.Windows(1)
обращается первый объект этой коллекции. (MSDN)
Примечание стороны, сделайте себе одолжение и падение, что нижний регистр l
венгерский префикс для Long
- это венгерская нотация больно читаемость. Используйте имена идентификаторов, которые вы можете произнести, и сохраняйте функции/процедуры в 10 строках, вам не понадобятся плохие мнемоники, чтобы понять, что к чему.
Благодарим вас за подробный ответ. интересно читать. – Oliver