许多人使用Word创建表单,然后其他人使用这些表单来输入信息。我不是在谈论您在复印机上打印并复制的普通普通表格。我正在谈论使用带有Word特殊表单字段的表单来创建模板,这些模板用作数据收集文档的基础,这些文档随数据一起单独保存。

通过设计,这些形式受到保护。这可能是好事,也可能是坏事。很好,因为它阻止用户更改他们不应该更改的信息。这很糟糕,因为它使您无法更改可能想要的任何信息。发生的情况是,当用户基于表单模板创建文档时,他们在表单字段中输入的信息将保存在新文档中。如果重新加载已保存的文档,解锁表单以添加新字段或进行其他更改,然后在保存表单之前重新锁定表单,Word将自动删除用户添加到表单的信息,并且所有表单字段都将被删除。重新设置为默认值。

信不信由你,这是Word的功能。有人会质疑这种表征,但这是表单功能是由潜在的力量设计的。解决此问题的唯一方法是使用宏。保存宏的自然位置是表单所基于的模板。您可能希望通过自定义工具栏按钮或自定义菜单命令来使用该宏。

(_WordTips._的其他问题中介绍了将宏添加到工具栏和菜单中的问题。)

请记住,问题只有在重新锁定表格时才会显现出来。解锁它们不会导致数据丢失。因此,您只需要使用特殊的宏即可重新锁定表单,并且可以使用Word中的常规解锁工具在更改之前取消保护表单。以下宏将安全地重新锁定您未锁定的表单:

Sub SafeFormLock()

If ActiveDocument.ProtectionType = wdNoProtection Then         ActiveDocument.Protect _           Password = "" _           Type:=wdAllowOnlyFormFields, _           NoReset:=True     End If End Sub

If …​ Then检查的原因是,如果在活动文档上使用保护方法并且该VBA已经受到保护,则VBA会生成错误。同样,请注意,此宏未设置保护密码。如果要使用密码,则需要在宏中提供密码。

注意:

如果您想知道如何使用此页面(或_WordTips_网站上的任何其他页面)中描述的宏,我准备了一个包含有用信息的特殊页面。

_WordTips_是您进行经济有效的Microsoft Word培训的来源。

(Microsoft Word是世界上最流行的文字处理软件。)本技巧(1570)适用于Microsoft Word 97、2000、2002和2003。您可以在Word(Word 2007)的功能区界面中找到此技巧的版本。和更高版本)在这里: