【发布时间】:2019-08-30 00:25:44
【问题描述】:
文本表单域是动态创建、命名的,并且有些是被赋值的。我需要在创建某些表单字段后将其格式设置为货币。
我已经尝试在前端的表单域属性窗口中设置格式,这很有效。但是当代码生成表单字段时,我需要这样做。我尝试了 .TextInput 和 .Format 属性的不同变体。表单域没有任何其他问题。
ActiveDocument.FormFields("name").TextInput.Format="$#,##0"
它应该将表单域设置为接受任何输入并将其格式化为货币。 FormField 看起来相关的属性似乎大多是只读的。 Google 没有提供任何有用的信息。
表单的目的是映射几条信息,然后让用户填写其余信息,或更新映射的字段。我使用表单域是因为它是一个表单,并且它的结构需要受到保护。保护设置为“填写表格”,但这不会改变格式的结果。此外,根据返回的行数来添加/删除表单域。每次映射时,表单域都是从头开始生成的,并且它们没有格式。
【问题讨论】:
-
除非您打算让某人之后能够更改值,否则您为什么要使用表单域?您对“将数据映射到字段时重置格式”的引用表明它们在更新之前没有应用“填写表单”保护。
标签: vba ms-word form-fields