使用C#中的用户定义类型调用VBA宏?

时间:2011-01-25 10:59:31

标签: c# automation word-vba

我有一个带有VBA模块的Word文档,其中包含用户定义的类型(公共类型XXX)和一些将此类型作为参数的公共子文档。是否可以通过Application的Run()?

从C#调用这些subs

问候, 史蒂芬

1 个答案:

答案 0 :(得分:0)

我不知道你是否有灵活性,但这就是我解决这个问题的方法。

  1. 创建另一个程序集(我称之为“xx.Common”)
  2. 在那里添加一些结构,使它们可见COM
  3. 从VBA和C#项目引用该程序集
  4. 添加一个新的VBA子结构,并将这些结构作为参数
  5. 您现在可以传递结构化的用户定义数据。如果你概括了这个想法,你可以使用任何 COM-visible类型(即不仅仅是结构)。只要两个项目都引用了定义这些类型的程序集,就应该没问题。