Пошаговое руководство. Создание первой надстройки уровня приложения для Excel
В данном вводном пошаговом руководстве иллюстрируется порядок создания надстройки уровня приложения для Microsoft Office Excel.Функциональные возможности, создаваемые в этом виде решения, доступны самому приложению независимо от типа открываемых книг.
Применение. Сведения этого раздела применяются к проектам уровня приложения для Excel 2013 и Excel 2010. Дополнительные сведения см. в разделе Доступность функций по типам приложений Office и проектов.
В данном пошаговом руководстве рассмотрены следующие задачи:
Создание проекта надстройки для Excel.
Написание кода, использующего объектную модель Excel, для добавления текста в книгу при ее сохранении.
Построение и запуск проекта для тестирования.
Удаление завершенного проекта, чтобы надстройка больше не запускалась автоматически на компьютере разработчика.
![]() |
---|
На вашем компьютере названия некоторых элементов интерфейса пользователя Visual Studio или их расположение могут отличаться от указанных в нижеследующих инструкциях. Это зависит от имеющегося выпуска Visual Studio и используемых параметров. Дополнительные сведения см. в разделе Параметры Visual Studio. |
Обязательные компоненты
Ниже приведены компоненты, необходимые для выполнения данного пошагового руководства.
-
Выпуск Visual Studio 2012, включающий инструменты разработчика Microsoft Office. Дополнительные сведения см. в разделе [Настройка компьютера для разработки решений Office](bb398242\(v=vs.110\).md).
- Excel 2013 или Excel 2010.
Создание проекта
Создание нового проекта надстройки Excel в Visual Studio
Запустите Visual Studio.
В меню Файл последовательно выберите пункты Создать и Проект.
В области шаблонов разверните узел Visual C# или Visual Basic, а затем разверните Office/SharePoint.
В разделе развернуть узел Office/SharePoint выберите узел Добавить- ins office.
В списке шаблонов проектов выберите шаблон Надстройка Excel 2010 или Надстройка Excel 2013.
В поле Имя введите FirstExcelAddIn.
Нажмите кнопку ОК.
Visual Studio создает проект FirstExcelAddIn и открывает в редакторе файл кода ThisAddIn.
Написание кода для добавления текста в сохраненную книгу
Добавьте следующий код в файл кода ThisAddIn.Новый код использует объектную модель Excel для вставки стандартного текста в первую строку активного листа.Активным является лист, являвшийся открытым во время сохранения книги пользователем.По умолчанию файл кода ThisAddIn содержит следующий созданный код:
Частичное определение класса ThisAddIn.Этот класс предоставляет точку входа для кода, а также доступ к объектной модели Excel.Дополнительные сведения см. в разделе Программирование надстроек уровня приложения.Остальная часть класса ThisAddIn определена в скрытом файле кода, который не подлежит изменению.
Обработчики событий ThisAddIn_Startup и ThisAddIn_Shutdown.Эти обработчики событий вызываются, когда Excel загружает и выгружает надстройку.Эти обработчики событий следует использовать для инициализации надстройки при ее загрузке и для освобождения ресурсов, занятых надстройкой, при ее выгрузке.Дополнительные сведения см. в разделе События в проектах Office.
Добавление строки текста в сохраненную книгу
В файле кода ThisAddIn добавьте в класс ThisAddIn следующий код.Новый код определяет обработчик событий для события WorkbookBeforeSave, возникающего при сохранении книги.
Когда пользователь сохраняет книгу, обработчик событий добавляет новый текст в начало активного листа.
Private Sub Application_WorkbookBeforeSave(ByVal Wb As Microsoft.Office.Interop.Excel.Workbook, ByVal SaveAsUI As Boolean, ByRef Cancel As Boolean) Handles Application.WorkbookBeforeSave Dim activeWorksheet As Excel.Worksheet = CType(Application.ActiveSheet, Excel.Worksheet) Dim firstRow As Excel.Range = activeWorksheet.Range("A1") firstRow.EntireRow.Insert(Excel.XlInsertShiftDirection.xlShiftDown) Dim newFirstRow As Excel.Range = activeWorksheet.Range("A1") newFirstRow.Value2 = "This text was added by using code" End Sub
void Application_WorkbookBeforeSave(Microsoft.Office.Interop.Excel.Workbook Wb, bool SaveAsUI, ref bool Cancel) { Excel.Worksheet activeWorksheet = ((Excel.Worksheet)Application.ActiveSheet); Excel.Range firstRow = activeWorksheet.get_Range("A1"); firstRow.EntireRow.Insert(Excel.XlInsertShiftDirection.xlShiftDown); Excel.Range newFirstRow = activeWorksheet.get_Range("A1"); newFirstRow.Value2 = "This text was added by using code"; }
Если используется C#, следует добавить в обработчик событий ThisAddIn_Startup следующий необходимый код.Этот код используется для подключения к обработчику событий Application_WorkbookBeforeSave события WorkbookBeforeSave.
this.Application.WorkbookBeforeSave += new Microsoft.Office.Interop.Excel.AppEvents_WorkbookBeforeSaveEventHandler(Application_WorkbookBeforeSave);
Для изменения книги при ее сохранении в предыдущих примерах кода используются следующие объекты:
Поле Application класса ThisAddIn.Поле Application возвращает объект Microsoft.Office.Interop.Excel.Application, который представляет текущий экземпляр Excel.
Параметр Wb обработчика событий для события WorkbookBeforeSave.Параметр Wb является объектом Microsoft.Office.Interop.Excel.Workbook, представляющим сохраненную книгу.Дополнительные сведения см. в разделе Общие сведения об объектной модели Excel.
Проверка проекта
Тестирование проекта
Нажмите клавишу F5 для построения и выполнения проекта.
При построении проекта код компилируется в сборку, которая включается в папку выходных данных построения для проекта.Visual Studio также создает ряд записей реестра, которые позволяют Excel открывать и загружать надстройку, и настраивает параметры безопасности на компьютере разработчика, чтобы разрешить выполнение надстройки.Дополнительные сведения см. в разделе Построение решений Office.
В Excel сохраните книгу.
Убедитесь, что в книгу добавлен следующий текст.
Этот текст добавлен с помощью кода.
Закройте Excel.
Удаление проекта
По окончании разработки проекта удалите сборку надстройки, записи реестра и параметры безопасности из компьютера разработчика.В противном случае надстройка продолжит запускаться при каждом открытии Excel на компьютере разработчика.
Очистка завершенного проекта на компьютере разработчика
- В меню Visual Studio Построение выберите пункт Удалить решение.
Следующие действия
Теперь, после создания простой надстройки уровня приложения для Excel, можно начать более подробное изучение процесса разработки надстроек в следующих разделах:
Общие задачи программирования, которые можно выполнять с помощью надстроек: Программирование надстроек уровня приложения.
Задачи программирования, специфичные для надстроек Excel: Решения Excel.
Использование объектной модели Excel: Общие сведения об объектной модели Excel.
Настройка пользовательского интерфейса Excel, например добавление настраиваемой вкладки на ленту или создание собственной настраиваемой области задач: Настройка пользовательского интерфейса Office.
Построение и отладка надстройки уровня приложения для Excel: Построение решений Office.
Развертывание надстроек уровня приложения для Excel: Развертывание решения Office.
См. также
Основные понятия
Общие сведения о разработке решений Office
Другие ресурсы
Программирование надстроек уровня приложения
Общие сведения об объектной модели Excel