Шаг 5 - Далее про Workbooks в Excel
В прошлый раз мы научились добавлять книги в коллекцию. Теперь научимся удалять и получать информацию о книгах. Так как книга ассоциируется с файлом, то и метод удаления книги из колекции называется Close. Но для удаления необходимо получить доступ к элементу.
Sub Test() Application.Workbooks.Item(1).Close End Sub
В таком варианте закроются все книги:
Sub Test() Application.Workbooks.Close End Sub
Функция Close имеет ряд необязательных параметров. Вот они.
expression.Close(SaveChanges, FileName, RouteWorkbook)
Первый параметр SaveChanges типа BOOL, если установить TRUE сделанные изменения сохранятся, в противном случае нет. Если параметр упускается, то при закрытии появляется диалоговое окно с вопросом о необходимости сохранения.
Следующий параметр FileName необходим, когда идет вопрос о закрытии книги не связанной еще с именем файла. Последний параметр связан с одновременной работой над книгой. Он типа BOOL.
Получить доступ к книгам в коллекции можно используя метод Item():
Sub Test() MsgBox (Application.Workbooks.Item(1).Name) MsgBox (Application.Workbooks.Item("Test.xls").FullName) End Sub
Как видите, доступ можно получить по индексации и по имени книги, следует знать, что имя книги это имя файла, в котором он хранится. Получив доступ по индексу в первой строке я узнал имя. А во второй по имени получил доступ к свойствам обьекта WorkBook и получил полное имя, название файла и путь, который и вывел на экран в виде сообшения.
Еще одно свойство - это создатель книги, и называется он Creator
Sub Test() If (Application.Workbooks.Creator = &H5843454C;) Then MsgBox "Excel Creator" Else MsgBox "Not Excel Creator" End If End Sub
С помощью Parent можно получить доступ к старшему объекту коллекции при выполнении кода изложенного ниже, появится MS Excel, ну а Вы что подумали ? :-)
Sub Test() MsgBox (Application.Workbooks.Parent.Name) End Sub
Предыдущий Шаг | Следующий Шаг
Автор Каев Артем.