WorkbookExtensions.GetVstoObject Метод (2007 System)
Обновлен: Ноябрь 2007
Возвращает ведущий элемент книги Excel, который расширяет функциональность собственной книги Excel.
Пространство имен: Microsoft.Office.Tools.Excel.Extensions
Сборка: Microsoft.Office.Tools.Excel.v9.0 (в Microsoft.Office.Tools.Excel.v9.0.dll)
Синтаксис
'Декларация
<ExtensionAttribute> _
Public Shared Function GetVstoObject ( _
workbook As _Workbook _
) As Workbook
'Применение
Dim workbook As _Workbook
Dim returnValue As Workbook
returnValue = workbook.GetVstoObject()
public static Workbook GetVstoObject(
this _Workbook workbook
)
Параметры
- workbook
Тип: Microsoft.Office.Interop.Excel._Workbook
Книга, которую требуется расширить. Не используйте этот параметр вручную. Если вы вызовете этот метод для книги Excel, данный параметр будет предоставлен во время выполнения.
Возвращаемое значение
Тип: Microsoft.Office.Tools.Excel.Workbook
Ведущий элемент книги Excel Visual Studio Tools for Office.
Примечание об использовании
В Visual Basic и C# этот метод можно вызывать как метод экземпляра для любого объекта типа _Workbook. При вызове метода для экземпляра следует опускать первый параметр. Дополнительные сведения см. в разделе Методы расширения (Visual Basic) или Методы расширения (руководство по программированию в C#).
Заметки
Вызовите этот метод в надстройке уровня приложения, чтобы настроить любую открытую в Excel книгу. Этот метод возвращает ведущий элемент Microsoft.Office.Tools.Excel.Workbook.
Метод WorkbookExtensions.GetVstoObject создает новый расширенный объект Microsoft.Office.Tools.Excel.Workbook, если такой объект еще не был создан. Последующие вызовы данного метода возвращают кэшированный экземпляр существующего объекта Workbook.
Примечание. |
---|
Параметр workbook является типом Microsoft.Office.Interop.Excel._Workbook, который является родительским интерфейсом Microsoft.Office.Interop.Excel.Workbook). Следовательно, этот метод расширяет оба типа: как Microsoft.Office.Interop.Excel._Workbook, так и Microsoft.Office.Interop.Excel.Workbook. Обычно при ссылке на книгу Excel используетсяMicrosoft.Office.Interop.Excel.Workbook. |
Ограничения в настройках уровня документа
В проекте настройки уровня документа этот метод имеет больше ограничений при использовании, чем в надстройке уровня приложения. Нельзя использовать его для создания новой книги Excel Visual Studio Tools for Office для собственной книги Excel. Можно использовать этот метод для возвращения книги Excel Visual Studio Tools for Office, которая являлся частью проекта настроек на этапе проектирования. Дополнительные сведения см. в разделе Получение вложенных объектов из собственных объектов Office в настройках уровня документа.
Если собственная книга Excel не является базовым объектом листа Excel Visual Studio Tools for Office, то данная книга возвращает nullссылка null (Nothing в Visual Basic).
Пример использования данного метода в надстройках уровня документа, см. в разделе Добавление элементов управления в документы Office во время выполнения.
Примеры
В следующем примере кода объект Visual Studio Tools for Office Microsoft.Office.Tools.Excel.Workbook получается из активной книги Excel. Затем в примере проверяется, есть ли какие-нибудь смарт-теги, определенные для данной книги. Данный код отображает смарт-теги или сообщение о том, что теги не найдены. Чтобы использовать данный кода, запустите его из класса ThisAddIn в проекте надстройки Excel.
Dim vstoWorkbook As Workbook = _
Me.Application.ActiveWorkbook.GetVstoObject()
Dim sb As StringBuilder = New StringBuilder()
If vstoWorkbook.VstoSmartTags.Count > 0 Then
sb.Append("VSTO smart tags found in this workbook:")
Else
sb.Append("No VSTO smart tags were found in this workbook.")
End If
For Each st As SmartTag In vstoWorkbook.VstoSmartTags
sb.Append(vbCrLf + st.Caption)
Next
System.Windows.Forms.MessageBox.Show(sb.ToString())
Workbook vstoWorkbook =
this.Application.ActiveWorkbook.GetVstoObject();
StringBuilder sb = new StringBuilder();
if (vstoWorkbook.VstoSmartTags.Count > 0)
{
sb.Append("VSTO smart tags found in this workbook:");
}
else
{
sb.Append("No VSTO smart tags were found in this workbook.");
}
foreach (SmartTag st in vstoWorkbook.VstoSmartTags)
{
sb.Append("\r\n" + st.Caption);
}
System.Windows.Forms.MessageBox.Show(sb.ToString());
Разрешения
- Полное доверие для непосредственно вызывающего метода. Этот член не может быть использован частично доверенным кодом. Дополнительные сведения см. в разделе Использование библиотек из не вполне надежного кода.
См. также
Ссылки
Microsoft.Office.Tools.Excel.Extensions - пространство имен