2016-10-26 5 views
1

Я работаю с VBA в Word. У меня должна быть копия моей работы в txt-файлах. Я сохраняю содержимое каждого модуля/класса/формы.Как экспортировать весь пользовательский ленточный xml с помощью VBA

Теперь мне нужно сохранить также пользовательскую ленту. Я не знаю, как получить доступ к ленте xml. Я знаю, как манипулировать своими лентами (создавать или отключать/активировать кнопки и другие забавные вещи), но я не знаю, как получить цельный xml.

Я создаю свои txt-файлы, используя событие BeforeSave (перед каждым сохранением я делаю txt-копию моих макросов). Я также хотел бы сохранить копию ленты.

Есть много примеров загрузки или замены ленты, но об экспорте существующей ленты с помощью VBA я ничего не могу найти.

ответ

0

Пройти this ссылка от Microsoft. Ядром кода здесь:

Private Sub AddHighlightRibbon() 
Dim ribbonXml As String 

ribbonXml = "<mso:customUI xmlns:mso=""http://schemas.microsoft.com/office/2009/07/customui"">" 
ribbonXml = ribbonXml + " <mso:ribbon>" 
ribbonXml = ribbonXml + " <mso:qat/>" 
ribbonXml = ribbonXml + " <mso:tabs>" 
ribbonXml = ribbonXml + "  <mso:tab id=""highlightTab"" label=""Highlight"" insertBeforeQ=""mso:TabFormat"">" 
ribbonXml = ribbonXml + "  <mso:group id=""testGroup"" label=""Test"" autoScale=""true"">" 
ribbonXml = ribbonXml + "   <mso:button id=""highlightManualTasks"" label=""Toggle Manual Task Color"" " 
ribbonXml = ribbonXml + "imageMso=""DiagramTargetInsertClassic"" onAction=""ToggleManualTasksColor""/>" 
ribbonXml = ribbonXml + "  </mso:group>" 
ribbonXml = ribbonXml + "  </mso:tab>" 
ribbonXml = ribbonXml + " </mso:tabs>" 
ribbonXml = ribbonXml + " </mso:ribbon>" 
ribbonXml = ribbonXml + "</mso:customUI>" 

ActiveProject.SetCustomUI (ribbonXml) 

End Sub

+0

На самом деле, это наоборот, что вы хотите, не так ли? Это импортирует ленту, а не экспортирует ее. – BarrettNashville

+0

Да, это обратное тому, что я хочу. Спасибо, в любом случае. – deku