2016-10-26 19 views
1

Word에서 VBA를 사용하고 있습니다. txt 파일로 작업 한 복사본을 가져야합니다. 모든 모듈/클래스/양식의 내용을 저장하고 있습니다.VBA를 사용하여 전체 사용자 지정 리본 xml을 내보내는 방법

이제 맞춤 리본도 저장해야합니다. 리본 xml에 액세스하는 방법을 모르겠습니다. 나는 리본을 조작하는 법을 알고있다. (단추를 만들거나 사용하지 못하게하거나 다른 재미있는 것들을 만들 수있다.) 그러나 나는 전체 XML을 얻는 법을 모른다.

BeforeSave 이벤트를 사용하여 내 txt 파일을 생성하고 있습니다 (모든 저장 전에 내 매크로의 txt 복사본을 만듭니다). 리본 사본도 저장하고 싶습니다.

리본을로드하거나 변경하는 방법은 많지만 VBA를 사용하여 기존 리본을 내보내는 방법에 대해서는 아무 것도 찾을 수 없습니다.

답변

0

Microsoft에서 제공하는 this 링크를 시도하십시오. 코드의 핵심은 여기에 있습니다 :

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) 

최종 하위

+0

사실, 그게 당신이 원하는 것을 반대이다,있다 없다가? 내보내기가 아닌 리본이 가져옵니다. – BarrettNashville

+0

예, 이것은 내가 원하는 것과는 반대입니다. 어쨌든 고마워. – deku