1

在 MS Publisher 2010 中,您可以将 PUB 文件(将模板与来自 Excel 文件的数据合并的目录出版物)添加到现有 pub 文件的末尾。编写目录书非常方便。我可以使用 Publisher 用户界面手动完成,我想自动执行此任务(有 26 章)。

不幸的是,我无法找到自动化功能,也不是一个简单的例子。有人可以帮助我完成这项任务的一些自动化示例吗?

谢谢,

4

1 回答 1

0

您可以使用 PowerShell 访问 Publisher 互操作库吗?

如果是这样,这就是我的处理方式(未经测试的 C#,但如果您在MSDN 的 Publisher VBA 参考中阅读它,它应该让您了解如何处理它):

Publisher.Application firstPubApp = new Publisher.Application(); //open a new publisher instance
Publisher.Document sourcePublication = firstPubApp.Open("sourcefile.pub"); //open your publisher document

Publisher.Application otherPubApp = new Publisher.Application();
Publisher.Document targetPublication = otherPubApp.Open("targetfile.pub");
targetPublication.Pages.Add(1, 1); //add one page after page 1

foreach (Publisher.Shape shape in sourcePublication.Pages[1].Shapes) //loop through all pages on page 1
{
    shape.Copy(); //copy the shape
    otherPubApp.ActiveDocument.Pages[2].Shapes.Paste(); //paste it in the other document
}

不过,很可能比遍历所有页面上的所有形状更好的方法隐藏在该文档的某个位置。与 Excel 或 Word 相比,很难找到 Publisher 的示例。

于 2015-09-22T20:42:41.753 回答