以下是引用mygod100在2006-11-3 1:02:47的发言:在word里,如何自定义一个变量,方便在各处调用。 如需要一个变量 VERSON,这个变量在这份文档里要被多处多次使用,每回文档版本升级后,只要我改一处,那其它引用这个变量的地方都的值自动被修改了,如果不用变量,则要找多处修改比较麻烦,易错易少改了,有没有办法如增加一个变量?或有没有类似的功能啊? 这个变量如果只是在这个文档里多次被调用,你只要是在过程中使用该同一个变量,在过程开始时初始化之即可啊,不存在你所说的要改动多次的情况;如果需要在多个过程、模块中调用,可以声明一个全局变量(PUBLIC),如果需要保存变量的,还可以使用文档变量(Variables(index)),以下是关于它的帮助。 Variables 集合对象 参阅属性方法事件特性Document Variables Variable 由 Variable 对象组成的集合,该对象代表加入文档或模板中的变量。文档变量用于宏操作之间的保留宏设置。 使用 Variable 集合 用 Variables 属性可返回 Variables 集合。下列示例显示文档“Sales.doc”中的变量数。 MsgBox Documents("Sales.doc").Variables.Count & " variables" 可用 Add 方法在文档中添加一个变量。下列示例在活动文档中加入一个名为“Temp”的文档变量,其值为 12。 ActiveDocument.Variables.Add Name:="Temp", Value:="12" 如加入的文档变量名称和 Variables 集合中已有的变量名称相同,则会出错。若要避免此种错误,请在加入新变量之前列举集合。如果 Blue 文档变量已经存在于活动文档中时,下列示例将其值设为 6,否则将其加入文档并赋值为 6。 For Each aVar In ActiveDocument.Variables If aVar.Name = "Blue" Then num = aVar.Index Next aVar If num = 0 Then ActiveDocument.Variables.Add Name:="Blue", Value:=6 Else ActiveDocument.Variables(num).Value = 6 End If 可用 Variables(index) 返回一个 Variables 对象,其中 index 为文档变量名或索引序号。下列示例显示活动文档中文档变量 Temp 的值。 MsgBox ActiveDocument.Variables("Temp").Value 索引序号表示文档变量在 Variables 集合中的位置。第一个加入 Variables 集合的变量为索引序号 1,第二个加入集合的变量为索引序号 2,以此类推。下列示例显示活动文档中第一个文档变量的名称。 MsgBox ActiveDocument.Variables(1).Name 用 OpenAsDocument 方法将模板作为文档打开,可在该模板中添加文档变量。下列示例将“选项”对话框中的用户名保存在附加于活动文档的模板中。 ScreenUpdating = False With ActiveDocument.AttachedTemplate.OpenAsDocument .Variables.Add Name:="UserName", Value:= Application.UserName .Close SaveChanges:=wdSaveChanges End With |