我在将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问题
答案 0 :(得分:3)
mask
不是内置函数。此函数应在模块中的某处定义,您还必须将此函数复制到Word 2007文档(这就是您收到错误“Sub或Function not defined。”)的原因。您可以通过右键单击mask
,然后选择定义来查看此功能的定义。
但是,最简单的“迁移”方法是在Office 2007中打开Word 2003文档,然后将其另存为.dotm或.docm文件(具体取决于您是要创建模板还是常规文档) )。