Методы объекта Workbook

Дадим теперь краткую характеристику основным методам объекта Workbook. Мы уже говорили о том, что создаются и открываются рабочие книги методами коллекции Workbooks - Add, Open иOpenTextFile. А вот закрываются и сохраняются, используя собственные методы. С них мы и начнем описание методов:

· Save, SaveAs, SaveCopyAs - позволяют сохранить рабочую книгу, без ее закрытия и удаления из коллекции Workbooks. При первом сохранении следует применять метод SaveAs, чтобы задать имя файла, в котором книга сохраняется. Метод имеет и другие параметры - формат хранения, пароль, статус и другие характеристики. Последний из этой группы методов создает копию рабочей книги.

· Close - выполняет те же функции, что и Save, но одновременно закрывает книгу и удаляет ее из коллекции.

· Activate - активизирует рабочую книгу.

· Route - направляет рабочую книгу по сети всем участникам совместной разработки. Список участников и другие характеристики задаются в свойствах объекта RoutingSlip. Вот пример процедуры, в которой определяется круг участников работы, после чего им пересылается текущая книга.

Public Sub BookRoute()

'Регистрация исполнителей совместной разработки

'в объекте RoutingSlip.

'Посылка книги совместно работающим исполнителям.

With ThisWorkbook

.HasRoutingSlip = True

With .RoutingSlip

.Delivery = xlOneAfterAnother

.Recipients = Array("Илья Биллиг", _

"Михаил Дехтярь")

.Subject = "Collaboration Test"

.Message = "Это книга Excel, пересылаемая в качестве примера"

.ReturnWhenDone = True

End With

.Route

End With

 

End Sub

Заметьте, для того, чтобы при пересылке книги не задавались лишние вопросы, все исполнители, включенные в список Recipients, также как и сам автор документа, должны быть включены в адресную книгу. Согласно установленному порядку книга будет послана первому исполнителю, указанному в списке, и далее будет пересылаться по заданному списком маршруту. После отсылки книги свойство Routedавтоматически будет установлено как True.

· AcceptAllChanges, RejectAllChanges - принимает или отвергает все изменения, сделанные участниками совместной разработки документа при разделенном доступе.

· RefreshAll - обновляет сводные таблицы и все области, содержащие внешние данные.

· PurgeChangeHistoryNow (Days,SharingPassword) - удаляет из истории изменений все те, чей срок хранения превосходит число дней, заданных параметром Days. Второй параметр задает общий пароль.

· Protect, ProtectSharing, Unprotect, UnprotectSharing - методы, включающие и выключающие пароли личные и общие рабочей книги.

· ExclusiveAccess - если книга открыта с разделяемым доступом, то этот метод дает пользователю, вызвавшему его, исключительное право доступа - изменения, сделанные всеми остальными пользователями должны сохраняться в отдельных файлах.

· ChangeFileAccess(Mode, WritePassword, Notify) - изменяет статус доступа. Новый статус задается параметром Mode, который может принимать одно из двух значений: xlReadWrite и xlReadOnly. Если файл снабжен паролем и получает статус для записи и чтения, то второй параметр WritePassword задает пароль на запись. Если булев параметр Notify имеет значение True, то пользователь получает уведомление, когда файл недоступен.

· AddToFavorites - добавляет в папку Favorites ярлычок рабочей книги.

· PivotCaches - возвращает коллекцию областей памяти, отводимых сводным таблицам данной рабочей книги. Элементами этой коллекции являются объекты PivotCache. Каждой сводной таблице - объектуPivotTable отводится своя память (кэш), которую и задает объект PivotCache.

· RunAutoMacros - запускает на выполнение все автомакросы данной книги.

· LinkSources([Type]), ChangeLink(Name As String, NewName As String, [Type As XlLinkType = xlLinkTypeExcelLinks]), OpenLinks(Name As String, [ReadOnly], [Type]), LinkInfo(Name As String, LinkInfo As XlLinkInfo, [Type], [EditionRef]), UpdateLink([Name], [Type]) - группа методов, позволяющих работать со ссылками. Ссылки могут быть четырех типов:

o на другие рабочие книги Excel ,

o на документы, связанные по протоколу OLE (например, документы Word, на которые ссылается рабочая книга) или протоколу DDE,

o на издателей книги при совместной работе над книгой и ее публикации на сервере,

o на подписчиков книги, опубликованной на сервере и доступной для подписчиков.

Метод LinkSources позволяет получить все ссылки типа, заданного его параметром. Если параметр не указан, то будут выданы ссылки на книги Excel. Следующий метод Change позволяет изменить ссылку,Open - открыть документ по заданной ссылке, Info - получить некоторую информацию о документе, Update - обновить ссылки.

Вот пример работы с этой группой методов объекта Workbook:

Public Sub LinkDocs()

'Установление связей рабочей книги

Dim BookLinks As Variant

Dim i As Integer

With ThisWorkbook

' связи с другими книгами Excel.

BookLinks = .LinkSources(xlExcelLinks)

If Not IsEmpty(BookLinks) Then

Debug.Print "Существуют ссылки на рабочие книги Excel!"

For i = LBound(BookLinks) To UBound(BookLinks)

Debug.Print "Ссылка" & i & " : ", BookLinks(i)

If BookLinks(i) = "BookTwo" Then

.OpenLinks BookLinks(i)

.ChangeLink BookLinks(i), "BookOne"

End If

Next i

Else: Debug.Print "Ссылки на рабочие книги отсутствуют!"

End If

 

BookLinks = .LinkSources(xlOLELinks)

If Not IsEmpty(BookLinks) Then

Debug.Print "Существуют ссылки на OLE - документы!"

For i = LBound(BookLinks) To UBound(BookLinks)

Debug.Print "Ссылка" & i & " : ", BookLinks(i)

Next i

If .LinkInfo("Word.Document.8|E:\O2000\Remarks.doc!'", _

xlUpdateState, xlOLELinks) = 1 Then

Debug.Print "Автоматическое обновление данных с OLE - документами!"

End If

Else: Debug.Print "Ссылки на OLE - документы отсутствуют!"

End If

 

BookLinks = .LinkSources(xlPublishers)

If Not IsEmpty(BookLinks) Then

Debug.Print "Существуют ссылки на издателей документа!"

For i = LBound(BookLinks) To UBound(BookLinks)

Debug.Print "Ссылка" & i & " : ", BookLinks(i)

Next i

Else: Debug.Print "Ссылки на издателей отсутствуют!"

End If

 

BookLinks = .LinkSources(xlSubscribers)

If Not IsEmpty(BookLinks) Then

Debug.Print "Существуют ссылки на подписчиков документа!"

For i = LBound(BookLinks) To UBound(BookLinks)

Debug.Print "Ссылка" & i & " : ", BookLinks(i)

Next i

Else: Debug.Print "Ссылки на подписчиков отсутствуют!"

End If

End With

End Sub

Вот как выглядят результаты отладочной печати, полученные при работе этой процедуры:

Существуют ссылки на рабочие книги Excel!

Ссылка1 : BookTwo

Ссылка2 : E:\O2000\DsCd\Ch11\BookOne.xls

Существуют ссылки на OLE - документы!

Ссылка1 : Word.Document.8|E:\O2000\Remarks.doc!'

Автоматическое обновление данных с OLE - документами!

Ссылки на издателей отсутствуют!

Ссылки на подписчиков отсутствуют!

Новые методы объекта Workbook

У объекта Workbook в Excel 2000 появились два новых метода:

· Sub ReloadAs(Encoding As MsoEncoding),

· Sub WebPagePreview().

Оба метода, так или иначе, связаны с общей тенденцией публикации документов Excel в Интернет. Рабочие книги, публикуемые в Интернет и интранет, хранятся, естественно в формате HTML. При их чтении могут возникнуть проблемы с кодировкой. Метод ReloadAs(Encoding As MsoEncoding) позволяет перезагрузить книгу в формате HTML, используя нужную кодировку, заданную параметром метода, значением которого может быть, например, константа msoEncodingCyrillic. Метод WebPagePreview позволяет перед публикацией книги отобразить ее на дисплее в том виде, как будет выглядеть соответствующая Web-страница, открываемая в интернет для работы с рабочей книгой.

Методы объекта Workbook предназначены, как можно видеть, для выполнения общих операций над документом и по существу не определяют специфических для Excel действий. Чтобы познакомиться со спецификой, следует пойти вглубь иерархии объектов.








Дата добавления: 2016-02-20; просмотров: 1030;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.013 сек.