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

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

Примечание.

Заинтересованы в разработке решений, которые расширяют возможности Office на нескольких платформах? Ознакомьтесь с новой моделью надстроек Office. Надстройки Office имеют небольшое пространство по сравнению с надстройками и решениями VSTO, и вы можете создавать их практически с помощью любой технологии веб-программирования, таких как HTML5, JavaScript, CSS3 и XML.

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

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

В этом разделе приводится краткий обзор объектной модели Excel. Дополнительные сведения о всей объектной модели Excel см . в документации по объектной модели Excel.

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

При создании проекта надстройки VSTO для 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 независимо от того, помещается ли код в один изSheet классов n или ThisWorkbook класса.

Globals.Sheet1.PrintPreview();

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

  • Приложение

  • Книга

  • Лист

  • Диапазон

    С этими четырьмя объектами и их составляющими связана большая часть работы в Excel.

Объект приложения

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

Примечание.

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

Объект книги

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

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

Worksheet - объект

Объект Worksheet является членом коллекции Worksheets. Многие свойства, методы и события объекта Worksheet идентичны или похожи на элементы, предоставляемые объектами Application или Workbook.

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

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

Range - объект

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

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

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

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

Справочник по основной сборке взаимодействия

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

Дополнительные сведения о проектировании PIA Excel, таких как различия между классами и интерфейсами в PIA и способах реализации событий в PIA, см. в разделе "Обзор классов и интерфейсов" в основных сборках взаимодействия Office.

Справочник по объектной модели VBA

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

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

Заголовок Description
Решения Excel Инструкции по созданию настроек уровня документа и надстроек VSTO для Microsoft Office Excel.
Работа с диапазонами Примеры выполнения стандартных задач с диапазонами.
Работа с листами Примеры выполнения стандартных задач с листами.
Работа с книгами Примеры выполнения стандартных задач с книгами.