Поделиться через


Общие сведения об объектной модели Excel

Для разработки решений, которые использует Microsoft Office Excel необходимо взаимодействие с объектами, предоставленными объектной моделью Excel.В этом разделе представлены наиболее важные объекты.

Применение. Сведения этого раздела применяются к проектам уровня документа и уровня приложения для Excel 2013 и Excel 2010. Дополнительные сведения см. в разделе Доступность функций по типам приложений Office и проектов.

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

Помимо объектной модели Excel, проекты Office в Visual Studio предоставляют ведущие элементы и элементы управления ведущего приложения, расширяющие некоторые объекты из объектной модели Excel.Поведение ведущих элементов и элементов управления ведущего приложения аналогично поведению объектов Excel, однако они обладают дополнительными функциональными возможностями, такими как возможность привязки данных и дополнительные события.Дополнительные сведения см. в разделах Автоматизация Excel с помощью расширенных объектов и Общие сведения о ведущих элементах и элементах управления ведущего приложения.

В этом разделе представлен краткие общие сведения об объектной модели Excel.Список документации для более глубокого изучения всей объектной модели Excel см. в разделе Using the Excel Object Model Documentation.

ссылка на видео Для просмотра связанных демонстрационных видеороликов перейдите по ссылкам How Do I: Use Event Handlers in an Excel 2007 Add-in? и How Do I: Use Shapes to Create a Bubble Chart in Excel?.

Доступ к объектам в проекте Excel

При создании нового проекта уровня приложения для Excel среда Visual Studio автоматически создает файл кода ThisAddIn.vb или ThisAddIn.cs.Доступ к объекту приложения можно получить с помощью свойства Me.Application или this.Application.

При создании нового проекта уровня документа для Excel можно создать новый проект книги Excel или шаблона Excel.Среда Visual Studio автоматически создает следующие файлы кода в новом проекте Excel как для проектов книги, так и для проектов шаблона.

Visual Basic

C#

ThisWorkbook.vb

ThisWorkbook.cs

Sheet1.vb

Sheet1.cs

Sheet2.vb

Sheet2.cs

Sheet3.vb

Sheet3.cs

Класс Globals в проекте можно использовать для получения доступа к объекту ThisWorkbook, Sheet1, Sheet2 или Sheet3 вне соответствующего класса.Дополнительные сведения см. в разделе Глобальный доступ к объектам в проектах Office.В следующем примере вызывается метод PrintPreviewSheet1 независимо от того, размещен ли код в одном из классов Sheetn или классе ThisWorkbook.

Globals.Sheet1.PrintPreview()
Globals.Sheet1.PrintPreview();

Поскольку данные в документе Excel хорошо структурированы, модель объекта иерархичная и прямая.Excel предоставляет сотни объектов, с которыми можно взаимодействовать, но лучше начать работу с запуска объектной модели, сосредоточившись на небольшом подмножестве доступных объектов.К числу данных объектов относятся следующие четыре:

  • Приложение

  • Книга

  • Лист

  • Диапазон

Большая часть работы центров Excel выполняется вокруг этих четырех объектов и их элементов.

wss56bz7.collapse_all(ru-ru,VS.110).gifОбъект приложения

Объект Excel Application представляет приложение Excel.Объект Application представляет множество сведений о выполняющемся приложении, параметрах этого экземпляра и текущих объектах пользователя, открытых в экземпляре.

ПримечаниеПримечание

Нельзя устанавливать для свойства EnableEvents объекта Application в Excel значение false.Установка значения "false" для этого свойства предотвращает инициирование событий в Excel, включая события элементов управления ведущего приложения.

wss56bz7.collapse_all(ru-ru,VS.110).gifОбъект Workbook

Объект Microsoft.Office.Interop.Excel.Workbook представляет одну книгу в приложении Excel.

Средства разработчика Office в Visual Studio расширяют объект Microsoft.Office.Interop.Excel.Workbook, предоставляя тип Microsoft.Office.Tools.Excel.Workbook.Данный тип обеспечивает доступ ко всем функциям объекта Microsoft.Office.Interop.Excel.Workbook.Дополнительные сведения см. в разделе Ведущий элемент книги.

wss56bz7.collapse_all(ru-ru,VS.110).gifОбъект Worksheet

Объект Microsoft.Office.Interop.Excel.Worksheet является членом коллекции Worksheets.Большинство свойств, методов и событий Microsoft.Office.Interop.Excel.Worksheet идентичны или похожи на элементы, предоставляемые объектами Application или Microsoft.Office.Interop.Excel.Workbook.

Excel предоставляет коллекцию Sheets как свойство объекта Microsoft.Office.Interop.Excel.Workbook.Каждый элемент коллекции Sheets является объектом Microsoft.Office.Interop.Excel.Worksheet или Microsoft.Office.Interop.Excel.Chart.

Средства разработки Office в Visual Studio расширяют объект Microsoft.Office.Interop.Excel.Worksheet, предоставляя тип Microsoft.Office.Tools.Excel.Worksheet.Этот тип дает доступ ко всем функциям объекта Microsoft.Office.Interop.Excel.Worksheet, а также к новым функциям, таким как возможность размещения управляемых элементов управления и обработки новых событий.Дополнительные сведения см. в разделе Ведущие элементы листа.

wss56bz7.collapse_all(ru-ru,VS.110).gifОбъект Range

Объект Microsoft.Office.Interop.Excel.Range является объектом, который будет использоваться по большей части с приложениями Excel.Перед тем, как начать управлять любой областью Excel ее необходимо указать в качестве объекта Range и работать с методами и свойствами этого диапазона.Объект Range представляющий ячейку, строку или столбца выделение ячеек, которая содержит один или несколько блоков ячеек, которые могут или не могут быть сопредельны или даже группу в составе ячейки на нескольких листах.

Visual Studio расширяет объект Microsoft.Office.Interop.Excel.Range, предоставляя типы Microsoft.Office.Tools.Excel.NamedRange и Microsoft.Office.Tools.Excel.XmlMappedRange.Эти типы обладают большей частью тех же функций, что и объект Microsoft.Office.Interop.Excel.Range, а также новыми функциями, такими как возможность привязки данных и новые события.Дополнительные сведения см. в разделах Элемент управления NamedRange и Элемент управления XmlMappedRange.

Использование документации по объектной модели Excel

Полные сведения об объектной модели Excel см. в справочнике по основной сборке взаимодействия (PIA) Excel и справочнике по объектной модели VBA.

wss56bz7.collapse_all(ru-ru,VS.110).gifДокументация по основной сборке взаимодействия

В справочной документации по основной сборке взаимодействия Excel описываются типы основной сборки взаимодействия для Excel.Этот документ доступен по следующему адресу: Excel 2010 Primary Interop Assembly Reference.

Дополнительные сведения о проектировании основных сборок взаимодействия Excel, таких как различия между классами и интерфейсами в основных сборках взаимодействия и реализацией событий в этих сборках, см. в разделе Overview of Classes and Interfaces in the Office Primary Interop Assemblies.

wss56bz7.collapse_all(ru-ru,VS.110).gifСправка по объектной модели VBA

В справочных документах по объектной модели VBA объектная модель Excel описана в том виде, в котором она предоставляется коду Visual Basic для приложений.Дополнительные сведения см. в разделе Справочник по объектной модели Excel 2010.

Все объекты и участники справочника объектной модели VBA соответствуют типам и участникам основной сборки взаимодействия Excel.Например, объект Worksheet в справочнике по объектной модели VBA соответствует объекту Microsoft.Office.Interop.Excel.Worksheet в основной сборке взаимодействия Excel.Хотя в справочнике по объектной модели VBA содержатся примеры кода для большинства свойств, методов и событий, необходимо преобразовать код VBA в этом справочнике в код Visual Basic или Visual C#, если требуется использовать их в проекте Excel, создаваемом с помощью Visual Studio.

wss56bz7.collapse_all(ru-ru,VS.110).gifСвязанные разделы

Заголовок

Описание

Решения Excel

Описание создание настроек уровня документа и надстроек уровня приложения для Microsoft Office Excel.

Работа с диапазонами

Примеры выполнения стандартных задач с диапазонами.

Работа с листами

Примеры выполнения стандартных задач с листами.

Работа с книгами

Примеры выполнения стандартных задач с книгами.