MS Word 2007 - 如何设置占位符文本以模仿文本而不是格式化

时间:2013-03-15 15:02:11

标签: ms-word word-template word-field word-contentcontrol

我可能会咬这个特定的问题,但我会尽可能具体,以防它在我的范围内。免责声明:除了简单的数据输入/一些格式化之外,我对MS Word的经验不是很丰富,而且我对使用宏或VBasic完全没有经验。不幸的是,我担心我的问题的解决方案将以最后两个中的一个的形式出现。

目标:

我想要做的是在我的模板文档中包含占位符文本,该文本将更改内容,但在更改第一个实例时不会格式化。基本上,我正在为软件套件的支持手册编写模板。每个应用程序都有一些类似的功能,如菜单栏,数据输入屏幕,诊断日志屏幕,交易历史记录等,所以当我需要插入某些特定于应用程序的属性时,我正在预编写这些部分并使用占位符。

我开始使用Insert-> Quick Parts-> Document Property-> Subject工具,我将其用作应用名称的占位符。我将属性设置为[主题],然后在整个文档中使用Insert-> Quick Parts-> Field-> Subject,无论我需要包含应用名称。在这种情况下,这很好用,因为应用名称将始终大写。我只是更改了第一个[主题]中的文本(内容受控)并更新整个文档中的字段,它们都很好地匹配,轻松,完成工作,回家喝啤酒,对吗?

不完全。

我们的软件通过扫描仪和SQL Server处理零件跟踪,因此虽然应用程序中的界面和菜单基本保持不变,但它们跟踪的零件会从应用程序更改为应用程序。因此,我需要在手册文本中引用它时更改零件名称;例如,如果我在ToiletPap.app中工作并且我们的TP被滚动跟踪,我需要将每个提及的[Component]更改为roll。如果我在LightBulbs.app工作,我需要[组件]说灯泡。

我的第一个努力是使用“文档属性”下拉菜单下的“高级”选项卡创建名为“组件”的自定义文档属性。然后我围绕我的第一个[Component]标题Component创建了一个纯文本内容控件,并使我的下一个[Component]成为一个带有修改代码的字段:{COMPONENT * MERGEFORMAT}。这来自复制[Subject]工作时我能找到的东西。这根本不起作用;更新第一个CC中的文本不会更改内容doc prop,我的字段将返回“!Undefined Bookmark,COMPONENT”。

我通过使用[Comments] doc属性接近我需要的东西,最初设置为[Component]。我就像[主题]一样使用它,但是(当我意识到资本化将成为一个问题的时候)当我在文本中提到我的[组件]时,我经常需要小写而不是上层

我已经看过MS的论坛以及其他一些论坛以及SO,我找不到任何试图做同样事情的人,更不用说如何回答。回答时请记住,如果你要包括如何输入/实现你提供的代码的逐步说明,那将对我有很大的帮助,因为正如我所提到的,我不知道如何进行编辑用于MS Word的宏/ VBasic。

重述和总结我的整体问题:如何使用显示“[Component]”文本的占位符,以便当我将[Component]的第一个实例更改为其他内容时,说“hopper”,每个后续[Component]的实例更新为hopper但保持其当前的大写和格式化方案?

对请求的长度表示歉意,但我想确保尽可能准确地解释情况。在此先感谢您的考虑和回应。

1 个答案:

答案 0 :(得分:1)

经过几个小时的修修补补后,我设法解决了这个问题。我也不需要宏或VBasic。

在[component]的第一个实例中,我创建了一个纯文本内容控件来充当容器(不是必需品,但它使它看起来更好。最终可能会导致问题,但是现在,它正在起作用意图)和书签。然后,对于[容器]的所有其他实例,我选择了每个实例并使用了以下字段代码的Insert-> Quick Parts-> Field-> Ref:

REF Text1 \*Lower

其中“Text1”是我的书签,“* Lower”表示全部小写。可以用* Upper或* FirstCap替换* Lower以分别表示全部大写或大写第一个字母。现在,每个字段都反映第一个字段的文本,其大小写适合于文档中每个字段的位置。就像在[Subject]中使用doc prop一样,^ a - >更新文档中的所有字段需要f9。