Развертывание надстроек Excel
Какой хороший способ установить надстройки Excel?
Я хочу легко выдвинуть надстройки Excel и зависимые от нее файлы, которые можно хранить в одном каталоге. Я хочу, чтобы пользователи никогда не получали версию по запросу, или я хочу отправить ее на свои ПК.
Это внутри компании, где я полностью контролирую окружающую среду.
3 ответа
Вы можете вставить этот код в ваш *.xlam в модуле "ThisWorkBook", этот код установить и активировать текущие надстройки
Private Sub Workbook_Open()
Dim oXL As Object, oAddin As Object
URL = Me.Path & "\"
normalUrl = Application.UserLibraryPath ' Environ("AppData") & "\Microsoft\AddIns"
AddinTitle = Mid(Me.Name, 1, Len(Me.Name) - 5)
If URL <> normalUrl Then
If MsgBox("Can you Install AddIns ?", vbYesNo) = vbYes Then
Set oXL = Application ' CreateObject("Excel.Application")
oXL.Workbooks.Add
Me.SaveCopyAs normalUrl & Me.Name
Set oAddin = oXL.AddIns.Add(normalUrl & Me.Name, True)
oAddin.Installed = True
oXL.Quit
Set oXL = Nothing
End If
End If
End Sub
Предполагается, что вы пытаетесь развернуть созданное вами надстройное решение. Вы бы взяли набор макрокоманд Excel, который вам нужен, в надстройке и сохранили его в файле xlsm excel в 2007/2010 или просто в файле xls в 2003 году. Оттуда перейдите в окно вашего проекта VBA (Alt + F11) и нажмите один раз на объект "ThisWorkBook", как показано ниже, и измените свойства книги, чтобы она стала надстройкой Excel, изменив значение IsAddin на True.
Имейте в виду, что это удалит листы Excel из вида, поскольку это становится расширением xla или xlam. Не паникуйте, вы просто превратили свою книгу Excel в дополнение. Сохраните его в левом верхнем углу, чтобы сохранить значок, и вы создали свое дополнение. Вы можете следовать приведенным ниже процедурам, чтобы связать свое дополнение с другими книгами.
После этого вы должны знать, где вы сохранили файл Excel, потому что это будет расположение файла надстройки (так как они являются одним и тем же).
Теперь откройте файл Excel, к которому вы хотите подключить это дополнение.
Оттуда снова перейдите в окно проекта vba, перейдите к инструментам и справочникам и выберите только что созданный модуль Excel.
Подход, который я использую в своей компании, заключается в хранении файлов надстроек (и любых других зависимых файлов) в хранилище SVN. Пользователи проверяют соответствующую папку на своем компьютере в непротиворечивом месте (может быть немного похоже на выпас кошек, чтобы заставить всех использовать одну и ту же структуру папок).
Если доступно обновление, просто посоветуйте пользователям обновить папку svn checkout.