在SharePoint上的Word模板中使用宏更改标头

时间:2013-09-24 10:25:23

标签: templates sharepoint macros header

我正在处理用户可以从Sharepoint访问的Word模板。 在这个模板中,我使用自定义ui编辑器制作了一个自定义功能区。

我希望用户能够选择页眉和页脚。 为此,我已经制作了2个不同的标题(1个带字段,1个没有)并将它们保存在模板中。 因此,当我想插入标题时,我可以像这样选择它们:Insert - >标题 - >一直向下滚动到“模板”并选择其中一个。这很完美。我已经记录了这个过程的宏,所以我可以在我的自定义功能区上使用它。

宏看起来像这样:

Sub Header()
If ActiveWindow.View.SplitSpecial <> wdPaneNone Then
    ActiveWindow.Panes(2).Close
End If
If ActiveWindow.ActivePane.View.Type = wdNormalView Or ActiveWindow. _
    ActivePane.View.Type = wdOutlineView Then
    ActiveWindow.ActivePane.View.Type = wdPrintView
End If
ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader
Application.Templates( _
    "http://spf.mysite.be/Shared%20Documents/Template.dotm"). _
    BuildingBlockEntries("Header").Insert Where:=Selection.Range, _
     RichText:=True
Selection.MoveDown Unit:=wdLine, count:=4
Selection.Delete Unit:=wdCharacter, count:=1
Selection.Delete Unit:=wdCharacter, count:=1
ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument
End Sub

问题: 当我从sharepoint打开模板时,此宏不再起作用。 我认为这是因为Word更改了链接的模板。当我进入开发人员选项卡并单击“文档模板”时,链接的模板如下:'C:\ Users \ xxx \ AppData \ Local \ Temp \ TemplateATA-8.dotm'(8更改为9下一个我从SharePoint打开模板的时间。) 当我在localy工作并将链接更改为本地位置时,没有问题。

有人可以帮帮我吗? 谢谢 尼娜

(我正在使用Word 2013,但旧版本的Word也必须能够使用该文档。)

1 个答案:

答案 0 :(得分:0)

问题解决了。我将链接更改为:Application.Templates( _ ActiveDocument.AttachedTemplate.FullName). _ 现在它完美无缺!!