Vba 字段和表单字段之间有什么区别?

Vba 字段和表单字段之间有什么区别?,vba,ms-word,word-field,Vba,Ms Word,Word Field,在word中,按alt+F9可显示“字段代码” 如何使用vba以编程方式访问它,并将它们与formfields配对 您可以通过访问字段代码?Application.ActiveDocument.Fields(1).代码 您可以通过Application.ActiveDocument.FormFields(1)访问表单字段 但是有没有任何关于指数匹配的保证? formfield是否永远都不是字段?一个字段能不能永远不是formfield 将它们从FORMTEXT中更改是否会产生任何意外的副作用,

在word中,按alt+F9可显示“字段代码”

如何使用vba以编程方式访问它,并将它们与formfields配对

您可以通过访问字段代码?Application.ActiveDocument.Fields(1).代码

您可以通过Application.ActiveDocument.FormFields(1)访问表单字段

但是有没有任何关于指数匹配的保证? formfield是否永远都不是字段?一个字段能不能永远不是formfield

将它们从FORMTEXT中更改是否会产生任何意外的副作用,或者这些基本友好的链接id/显示值是否允许您轻松地查看它们并在它们之间进行交换

编辑:我想出了以下方法来获取字段代码。我仍然不确定编辑它们是否是个好主意,或者它们代表什么

    Application.ActiveDocument.FormFields(1).Range.Fields(1).Code

字段是常规对象,可以是:

  • 文档的属性(内置或自定义)
  • 邮寄/合并邮寄
  • 计算
  • 表单字段
表单字段是用于输入的字段

看看标签信息中的链接,有很多有趣的东西

您可以通过它们自己的集合访问它们(在VBE中按F2键以使用对象浏览器)

对于字段,常规集合位于
Application.ActiveDocument.Fields

但您可以在许多对象中找到它们(使用对象浏览器检查!)。
看一看,了解一下您可以在其中找到它的其他对象!;)


据我所知,不可能在
表单字段
中嵌套某些内容,
就像您在
字段
中所做的那样

我不确定是否理解这个问题:

"Will changing these away from FORMTEXT have any unintended side effects, 
or are these basically nice and friendly linking id's / display values
allowing you to view them and swap between them with ease?"
如果你想创建一个用户可以填写的表单,你需要坚持使用
FormFields

如果要在文档中的特定位置显示值,
字段
是一种方法。

我甚至建议将自定义文档属性用于一般用途,并将邮件合并为邮件

哦,哇,对象浏览器太棒了。我会将您的答案标记为答案,但我还有几个未回答的问题:“formfield的范围是否可以包含多于一个“general”字段?”“将它们从FORMTEXT中更改是否会产生任何意外的副作用,或者这些基本友好的链接id/显示值是否允许您轻松查看它们并在它们之间进行交换?”?“当我使用alt+f9查看字段代码时,出现了FORMTEXT。我试着编辑这些只是为了看看会发生什么,但它们被无效的书签所取代。我还不确定文本FORMTEXT在字段代码中应该代表什么。但出于努力和诚意,我接受了您的答案。为了澄清,请在文档中放置一个遗留(formfield)字段,按alt+f9,您会看到FORMTEXT出现在括号中。@Ryanthelich:我不知道您使用的是哪个版本,但至少从2010年起,
FORMTEXT
似乎就不是字段了。。。所以是的,真的是遗产!^^的标记信息中的
字段的检查列表。而且我的表单字段不会像普通字段那样切换到字段代码中,即使使用Alt+F9Strange。谢谢你的帮助,非常感谢。