将Word模板从MS Word 2003转换为MS Word 2007

时间:2009-05-26 15:49:22

标签: vba ms-word

我在将Word模板从Word 2003移动到Word 2007时遇到问题

我需要转换的代码是

Sub Standardbrev()

    Documents.Add Template:= _
        "p:\setup\stdbrev.DOT", NewTemplate:= _
        False

    mask "<Navn>", False
    mask "<Adresse>", False
    mask "<Postby>", False
    mask "<att>", True
    mask "<Jura Nr>", False
    mask "<Vedr>", False
    mask "<Jurist>", False
End Sub

编辑,问题: 当我尝试将代码复制/粘贴到dotx文档时,我收到编译错误:

  

Sub或Function未定义。

如果我取消对maskpart的注释,我可以运行宏,并在新窗口中打开stdbrev.DOT文件

编辑:它在2003年做了什么: 当您运行宏时,会弹出7个框(每个蒙版1个),您可以在其中填充信息。信息替换文档中的掩码字段

希望这能解释我的问题

编辑:我找到了解决方案,我误解了一些代码,并且不知道掩码是很久以前别人写的功能。很抱歉发布这个noobish问题

1 个答案:

答案 0 :(得分:3)

mask不是内置函数。此函数应在模块中的某处定义,您还必须将此函数复制到Word 2007文档(这就是您收到错误“Sub或Function not defined。”)的原因。您可以通过右键单击mask,然后选择定义来查看此功能的定义。

但是,最简单的“迁移”方法是在Office 2007中打开Word 2003文档,然后将其另存为.dotm或.docm文件(具体取决于您是要创建模板还是常规文档) )。