отнюдь не решение, но, возможно, следующее дает отправную точку:
Из того, что вы говорите, я полагаю, вам удалось
- активировать ваш * .xlam надстройка на другом компьютере
- вы можете получить доступ ко всем его vba-кодом и формулярам пользователя
- вы можете не доступа это CustomUI ленточный
Проверьте, если ваш окончательный *.xlam
все еще имеет панель инструментов на панели инструментов в нем при развертывании его:
- сделать резервную копию ваших готовых к развертыванию добавить в файл (
*.xlam
).
- открыть файл, либо изменив его расширение файла на
.zip
. (Нет необходимости переименовывать его, если вы используете файловый архиватор, такой как 7-zip)
- содержание файла
\customUI\customUI.xml
должно примерно напоминать следующее.
Пример XML:
<customUI
xmlns="http://schemas.microsoft.com/office/2006/01/customui"
xmlns:shared="sharedNamespace"
onLoad="onLoadRibbonDB"
>
<ribbon>
<tabs>
<tab idQ="shared:tabControls" label="AddIn_Beispiele" >
<group id="grpA" label="Buttons">
<button id="buttonA" label="Button_large" image="bunny2" onAction="buttonA_Click" size="large"/>
</group>
</tab>
</tabs>
</ribbon>
</customUI>
Обратите внимание, что Excel не будет показывать ленту, если есть даже незначительные ошибки в нем. Для тестирования исключите все, что может привести к ошибке, а затем повторите ввод ленточных элементов управления шаг за шагом. При обнаружении следующих наиболее распространенным:
- идентификаторы не различаются (например, используемые в других лентах/надстроек)
- пользовательские иконки не отформатирован правильно
- пользовательские иконки не ссылаются правильно
Не по теме: если вы планируете развернуть файл через множество компьютеров, простой макрос вроде следующего может работать для вас:
Sub InstallAddIn()
On Error GoTo skpError
Dim path as String
path = "L:\SQL_AddIn\SQL_AddIn_V1.0.xlam"
name = "SQL_AddIn_V1.0"
' Copy the file
With New FileSystemObject
.CopyFile _
path _
, "C:\Users\" & Environ("USERNAME") & "\AppData\Roaming\Microsoft\AddIns\"
End With
' Add-In Aktivieren
AddIns(name).Installed = True
MsgBox ws1.Cells(1, 2).Value & " installiert.", vbInformation
Exit Sub
skpError:
MsgBox "Fehler #" & Err & vbNewLine & Error
End Sub
Вы разместили файл в папке XLStart? https://support.office.com/en-us/article/Customize-how-Excel-starts-6509b9af-2cc8-4fb6-9ef5-cf5f1d292c19 –
Возможный дубликат [Как добавить пользовательскую вкладку Ribbon с помощью VBA?] (http://stackoverflow.com/ вопросы/8850836/как к надстройке а-обычая-лента-закладка-используя-VBA) – Carrosive