Raj想知道样式是否可以保存在Word宏中,然后作为“合理性检查”的一部分在以后运行,以确保仅将模板样式应用于文档,而没有其他应用。

实际上,这个问题的答案比您推测的要复杂得多。如果Raj希望阻止用户直接添加样式(通过创建新样式)或间接添加样式(通过使用其他来源的复制和粘贴),那么实际上您可以尝试一些操作,包括一些宏。这些内容已包含在以下单词提示中:

http://wordribbon.tips.net/T012698

除了该技巧所涵盖的内容之外,如果您要做的就是检查文档中使用的样式是否在样式的“批准列表”中,那么这是一个相对简单的任务。样式的名称可以轻松地存储在字符串数组中,然后与应用于文档中每个段落的样式进行比较。您可以使用类似于以下的结构来逐步浏览文档中的段落,并检查样式是否在允许的列表中:

sTemp = ""

For Each p In ActiveDocument.Content.Paragraphs     sPStyle = p.Style     bNotFound = True     For J = 1 To iNumValid         If sPStyle = sValidStyles(J) Then bNotFound = False     Next J     If bNotFound Then         sTemp = sTemp & sPStyle & vbCrLf     End If Next p

这个例子只是一个代码片段。您的完整宏需要设置一个字符串数组(sValidStyles),其中包含所有有效的样式名称以及iNumValid(即数组元素的数量)。摘录完成后,sTemp变量将包含文档中使用的所有样式的名称,这些样式不在sValidStyles数组中。 (如果无效样式在文档中多次出现,它将在sTemp中多次出现。)

如果您正在寻找一个实际上会进行“合理性检查”以查看样式是否已修改的宏,那么该问题在天文学上会更加复杂。样式可以具有分数或数百种可能的设置,而将每个有效样式的每个设置存储起来将是一场噩梦。在这种情况下,最好使用上面链接的技巧中详细介绍的基于保护的方法。

注意:

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

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

(Microsoft Word是世界上最流行的文字处理软件。)本技巧(12959)适用于Microsoft Word 2007、2010、2013、2016、2019和Office 365中的Word。