Пошаговое руководство. Создание первой надстройки VSTO для Excel. Добавление и удаление надстроек в Excel Как в экселе добавить надстройки
В основном, данный файл предназначен для подключения/удаления надстроек, выложенных на данном сайте на странице Мои надстройки .
Добавить надстройку - надстройка, выбранная в соответствующем поле, будет добавлена в список доступных надстроек Microsoft Excel и автоматически подключена.
- Если установлен флажок Подключить файл помощи , то так же автоматически файл помощи будет подключен и его можно будет вызвать из надстройки нажатием значка соответствующей команды.
Удалить надстройку -надстройка, выбранная в соответствующем поле, будет удалена и отключена. Так же будет удален файл помощи для данной надстройки.
Только для выложенных на сайте надстроек - Если файл помощи не указан - то будет удален файл, относящейся программно к выбранной для удаления надстройке.
При помощи данного файла можно подключать и удалять абсолютно любые надстройки, а не только выложенные на данном сайте. Просто необходимо будет снять флажок с пункта - Подключить файл помощи .
Скачать программу
(305,8 KiB, 6 394 скачиваний)
Если решили самостоятельно подключить надстройку (на примере установки MyAddin.xla):Внимание: программа распространяется бесплатно. Распространение данной программы в коммерческих целях запрещено.
Помещаем файл надстройки с раширением.xla:
- в папку надстроек Excel, как правило она расположена по адресу:
C:\Documents and Settings\Дмитрий\Application Data\Microsoft\AddIns ;
для Windows 7: C:\Users\Дмитрий\AppData\Roaming\Microsoft\AddIns - в любое место на локальном диске;
Вместо "Дмитрий" - Ваша учетная запись на компьютере.
Запускаем Excel и выбираем:
Если надстройка была помещена в папку C:\Documents and Settings\Дмитрий\Application Data\Microsoft\AddIns
, то она будет отображена в списке и Вам надо будет только выбрать её, поставив галочку.
Если же Вы поместили надстройку в другую папку, то в окне выбора надстроек нажмите кнопку "Обзор " и выберите файл надстройки. После нажатия "ОК" надстройка будет подключена.
После подключения и установки надстройки для версий Excel 2007 и старше на панели появится новая вкладка(если она еще не отображена) - "Надстройки" (Add-Ins) и на ней будут показаны элементы, относящиеся к данной надстройке. Для версий Excel 2003 и ниже - команды новой надстройки будут созданы вместе с новой панелью, которая должна отобразиться сразу после установки надстройки.
Вкладка "Надстрйоки" и меню появляются только в том случае, если это предусмотрено надстройкой. Если в надстройке не реализован визуальный интерфейс, а присутствуют лишь функции пользователя или процедуры, запускаемые не с панели - то панель не появится.
В этом вводном пошаговом руководстве показано, как создавать надстройки уровня приложения для Microsoft Office Excel. Функции, создаваемые в подобном решении, доступны для приложения независимо от того, какие книги открыты.
Применимость. Информация в этой статье относится к проектам надстроек VSTO для Excel. Дополнительные сведения см. в разделе .
В данном пошаговом руководстве рассмотрены следующие задачи:
Создание проекта надстройки VSTO Excel для Excel.
Написание кода с использованием объектной модели Excel, которая при сохранении книги добавляет в нее текст.
Построение и запуск проекта для тестирования.
Удаление завершенного проекта для прекращения автоматического запуска надстройки VSTO на компьютере разработчика.
Создание проекта надстройки VSTO Excel в Visual Studio
Запустите Visual Studio.
В меню Файл выберите пункт Создать , а затем команду Проект .
В области шаблонов разверните узел Visual C# или Visual Basic , а затем узел Office/SharePoint .
В развернутом узле Office/SharePoint выберите узел Надстройки Office .
В списке шаблонов проектов выберите Надстройку Excel 2010 или Надстройку Excel 2013 .
В поле Имя введите FirstExcelAddIn .
Нажмите кнопку ОК .
Visual Studio создает проект FirstExcelAddIn и открывает файл кода ThisAddIn в редакторе.
Добавьте код в файл кода ThisAddIn. Новый код использует объектную модель Excel для вставки стандартного текста в первую строку активного листа. Активным является лист, открытый в момент сохранения книги пользователем. По умолчанию файл кода ThisAddIn содержит следующий созданный код:
Частичное определение класса ThisAddIn . Этот класс предоставляет точку входа для кода и обеспечивает доступ к объектной модели Excel. Остальная часть класса ThisAddIn определяется в скрытом файле кода, изменять который не следует.
Обработчики событий ThisAddIn_Startup и ThisAddIn_Shutdown . Эти обработчики событий вызываются, когда Excel загружает и выгружает надстройку VSTO. Их можно использовать для инициализации надстройки VSTO в процессе ее загрузки, а также для освобождения используемых надбавкой ресурсов при ее выгрузке. Для получения дополнительной информации см. .
Добавление строки текста в сохраненную книгу
В файл кода ThisAddIn добавьте в класс ThisAddIn указанный ниже код. Новый код определяет обработчик событий для события , которое возникает при сохранении книги.
Когда пользователь сохраняет книгу, обработчик событий добавляет новый текст в начало активного листа.
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 = ; }
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
Если используется C#, добавьте в обработчик событий ThisAddIn_Startup указанный ниже код. Он используется для подключения обработчика событий Application_WorkbookBeforeSave к событию .
This .Application.WorkbookBeforeSave += new Microsoft.Office.Interop.Excel.AppEvents_WorkbookBeforeSaveEventHandler(Application_WorkbookBeforeSave);
Для изменения книги при ее сохранении в приведенных выше примерах кода используются следующие объекты:
Поле Application класса ThisAddIn . Поле Application возвращает объект , который представляет текущий экземпляр Excel.
Параметр Wb обработчика событий для события . Параметр Wb является объектом , который представляет сохраняемую книгу. Для получения дополнительной информации см. .
Тестирование проекта
Нажмите клавишу F5 для построения и запуска проекта.
При построении проекта код компилируется в сборку, которая включается в выходную папку сборки для проекта. Visual Studio также создает ряд записей реестра, которые позволяют Excel обнаружить и загрузить надстройку VSTO, и настраивает параметры безопасности на компьютере разработчика, разрешая запуск надстройки VSTO. Дополнительные сведения см. в разделе
Надстройки Excel – это прекрасная альтернатива создания макросов доступных для использования любых других файлов рабочих книг. Если Вам понравиться создавать свои надстройки и вы войдете во вкус, то это полезное и интересное занятие может еще для вас приносить неплохой доход. Надстройки можно публиковать и продавать в магазине Office Store. В данном примере мы покажем, как создать свою достройку с макросом, написанным на коде самого простого и весьма востребованного языка программирования VBA (Visual Basic for Applications).
Как сделать и установить надстройку в Excel
Чтобы создать, добавить и включить свою надстройку с макросом, следует:
Надстройка VBA готова! Теперь во всех открытых рабочих книгах можно будет воспользоваться макросами из вашего *.xla файла. Чтобы убедиться в этом снова откройте редактор Visual Basic (ALT+F11).
Как видно ее теперь всегда можно найти в списке проектов и использовать все ее макросы в любых других файлах.
Как удалить надстройку в Excel
Чтобы отключить вашу надстройку снова откройте окно «ФАЙЛ»-«Параметры»-«Надстройки»-«Перейти» и снимите соответственную галочку в появившемся диалоговом окне. Для полного удаления надстройки придется удалить ее файл *.xla из папки C:\Documents and Settings\User_Name \AppData\Roaming\Microsoft\AddIns.
Внимание! В данном примере мы использовали формат рабочей книги для сохранения файла в формате «Надстройка 97-2003». Это позволяет использовать ее в разных версиях Excel. Например, файлы, сохраненные в формате *.xlam не может быть использована в версии 2007 и старше. Поэтому лучше воспользоваться старым форматом файлов надстройке *.xla.
процесс однотипный для всех версий, но имеет и некоторые различия. Условно можно разбить механизм установки надстроек в Excel на несколько шагов. Рассмотрим процедуру установки надстроек подробно для каждой из перечисленных версий Excel в отдельности. Для этого нам понадобится надстройка (чаще всего это файл с расширением.xla, но бывают и другие) и установленное приложение Excel со встроенным редактором Visual Basic.Для тех кому лучше один раз увидеть - представлен видеоролик по установке и подключению .
Шаг 2. Запускаем приложение Excel 2003 и выбираем меню "Сервис"/"Надстройки..."
После выбора пункта меню "Надстройки..." появляется список доступных надстроек, которые можно подключать и отключать установкой и снятием галочек перед названиями соответствующих надстроек.
Шаг 3. Для добавления (подключения) новой надстройки, нажимаем кнопку "Обзор". При нажатии на эту кнопку, появляется вот такое окно "Обзор":
Excel отправляет нас искать надстройки в папку с названием Addins и это не с проста. Именно здесь и должны располагаться файлы надстроек для максимально быстрого доступа к ним как приложения, так и самого пользователя. Размещение надстроек в папке Addins ускорит загрузку приложения Excel и подключение к ней надстройки (надстроек) при последующих запусках. Остается переместить файл надстройки с того места, которое мы запомнили в Шаге 1, в эту папку (можно и прямо в это окно, чтобы не искать саму папку на жестком диске). Если по каким-то причинам Вы не смогли, либо не захотели размещать свои надстройки в папке Addins, то через окно "Обзор" просто добираетесь до того места, куда сохранили файл надстройки. Дважды кликнув по выбранному файлу, Вы добавите его в список доступных надстроек. Вот собственно и все, надстройка установлена.
В случае установки готовых надстроек (макросов) для Excel 2003 , взятых с этого сайта, по окончании установки будет сформирована новая панель инструментов с кнопками, запускающими макросы.
Установка надстроек в Excel 2007
Устанавливать надстройки в Excel 2007 не сложнее, чем в Excel 2003. Рассмотри по шагам.
Шаг 1. Сохраняем файл надстройки на компьютер и запоминаем место его хранения (расположения).
Шаг 2. Запускаем приложение Excel 2007, нажимаем кнопку «Office» и выбираем «Параметры Excel» как показано на рисунке
Шаг 3. В появившемся окне "Параметры Excel" в поле "Управление:" выбираем "Надстройки Excel" и жмем кнопку "Перейти..."
Шаг 4. В очередном окне с названием "Надстройки" появляется список доступных надстроек, которые можно подключать и отключать установкой и снятием галочек перед названиями соответствующих надстроек. Для добавления (подключения) новых надстроек, нажимаем кнопку "Обзор".
Появляется окно "Обзор", которое отправляет нас искать надстройки в папку с названием Addins и это не случайно.
Именно в этом месте и должны располагаться файлы надстроек для максимально быстрого доступа к ним как приложения, так и самих пользователей. Размещение надстроек в папке Addins ускоряет загрузку приложения Excel и подключение к нему надстройки (надстроек) при последующих запусках. Перемещаем (добавляем) в это окно (в эту папку) файл, который присутствовал в Шаге 1. Если по каким-то причинам Вы не смогли, либо не захотели расположить свои надстройки в папке Addins, то через окно "Обзор" просто добираетесь до того места, где был изначально сохранен файл надстройки. Дважды кликаете по выбранному файлу и надстройка доба вляется в список доступных надстроек. Все, надстройка установлена. Обращаю Ваше внимание на то, что если после установки файл надстройки будет перемещен в другое место жесткого диска, либо название папки, в которой он находится будет изменено, то весь процесс установки придется повторить заново.
Надстройки могут быть либо установлены при начальной установке Excel, либо добавлены позднее. В ходе работы может возникнуть потребность в удалении тех надстроек, которые в дальнейшем будут уже не нужны (процесс удаления надстроек аналогичен процессу их установки, описанному в этой статье).
Выбор компонентов при установке Excel
При первоначальной установке Excel или при последующем изменении (в составе пакета Microsoft Office) требуемые надстройки могут быть выбраны и установлены так же, как и любой другой компонент, входящий в Excel. Первоначальную установку можно инициировать различными способами (например, запустив программу setup.exe, расположенную на инсталляционном диске). Следуя указаниям инсталляционной программы, через ряд шагов откроется окно Установка Microsoft Office 2010 (Microsoft Office 2010) - рис. 1.
Для того чтобы установить/удалить надстройки после того, как Microsoft Office был установлен, сделайте следующее:
- Закройте все работающие программы.
- Выполните команду Windows Пуск → Настройка → Панель управления (Start → Settings → Control Panel).
- Дважды щелкните по значку Установка и удаление программ (Add/Remove Programs), в результате чего откроется диалоговое окно Установка и удаление программ (Add/Remove Programs).
- В списке установленных программ найдите и выделите строку Microsoft Office.
- Нажмите кнопку Изменить (Change).
- Через некоторое время на экране появится диалоговое окно Microsoft Office с подзаголовком Измените текущую установку Microsoft Office (Change your installation of Microsoft Office) (рис. 2). В этом окне выберите пункт Добавить или удалить компоненты
(Add or Remove Features). В результате откроется диалоговое окно Microsoft Office с подзаголовком Параметры установки (рис. 1).
Если производится первоначальная установка Microsoft Office, убедитесь, что доступного места на диске достаточно, в противном случае смените диск (если имеется такая возможность) или уменьшите количество устанавливаемых программных компонентов - если места все равно не хватает, придется почистить диск или отказаться от установки.
При добавлении/удалении компонентов указываемое программой значение необходимого для установки дискового пространства не всегда соответствует действительности (поскольку в этом случае обычно большая часть компонентов уже установлена). Это окно содержит многоуровневый список, из которого можно выбрать добавляемые компоненты (рис. 3). «Спуститесь» по списку до уровня Microsoft Office\Microsoft Office Excel\Надстройки (Microsoft Office/Microsoft Office Excel\Add-ins) и выберите желаемый режим установки требуемых надстроек.
Для удаления не использующейся более надстройки выберите для нее режим Компонент недоступен (Not available).
После того как все необходимые установки будут сделаны, нажмите кнопку Продолжить (Continue), чтобы начать установку (переустановку). Надстройки будут доступны после завершения установки (и перезагрузки компьютера). Однако для непосредственного использования их еще необходимо загрузить.
Загрузка и выгрузка надстроек
Если надстройка уже установлена, то для использования дополнительных возможностей, предоставляемых ею, она должна быть загружена (запущена). Для запуска надстройки необходимо воспользоваться командой Файл → Параметры (File → Options). Далее в левой части открывшегося окна Параметры Excel (рис. 4) выбрать Надстройки → Перейти… (Add-Ins → Go…). Если в диалоговом окне Надстройки (Add-Ins) (рис. 5) отсутствует необходимая надстройка, следует нажать кнопку Обзор… (Browse…), чтобы указать ее местоположение вручную.
В случае если искомая надстройка не установлена, необходимо ее установить (Процесс установки надстроек см. ранее в этой статье.)
В диалоговом окне Надстройки (Add-Ins) установите флажок напротив требуемых надстроек и нажмите кнопку OK. После этого становятся доступными все дополнительные свойства и функции, связанные с выбранной надстройкой. При всех последующих запусках Excel будет загружаться и данная настройка. Для экономии памяти и повышения быстродействия можно выгрузить неиспользуемые надстройки. После выгрузки предоставляемые надстройкой полезные свойства и функции становятся недоступными, однако сама надстройка не исчезает и может быть легко запущена впоследствии. Выгрузка надстройки не освобождает занимаемую ею память, это произойдет только после перезапуска Excel.
Следует отметить, что начиная с последних версий Microsoft Excel, ряд надстроек, входивших в состав предыдущих версий, по разным причинам отсутствует, хотя появилось несколько новых надстроек (доступные надстройки представлены на рис. 5). По поводу надстроек, которые присутствовали в предыдущих версиях, но отсутствуют в Excel 2010/2013, в имеющейся на сайте Microsoft документации сказано, что недостающие надстройки предыдущих версий .
19.01.2015