我有一个 Word 文档,用作邮件合并的源文档。我可以编辑文档,但不能编辑用于合并的数据。我需要转换数据源中的一些数据(具体来说,我需要取数字(例如 342)并将它们的值添加到单词中(例如“三百四十二(342)”))。我可以编写一个 VBA 函数来进行转换,但我不确定如何最好地将数据传递给该函数。
有什么方法可以将宏与文档中的特定点相关联,并让合并驱动转换过程?(我正在考虑如何在 Word 字段中使用公式;我已经{ IF { MERGEFIELD foo } > 75 { MERGEFIELD foo } { = { MERGEFIELD foo } * 20 } }
在文档中有一些表单的东西。如果我可以添加一些东西以便我可以去{ FUNCTION WordNum { MERGEFIELD number } }
,那将是理想的。)
或者,我想我可以使用 VBA 在邮件合并的数据源(特别是document.MailMerge.DataSource
)中翻找并重写字段。如果我走那条路,我应该在哪里执行宏,以便在从数据源读取数据之后但在与文档合并之前获取数据?