如何在c#中使用互操作从Excel或PowerPoint文件中获得修订
本文关键字:文件 PowerPoint Excel 互操作 | 更新日期: 2023-09-27 18:08:07
我正在开发一个需要计算文档和修订中的单词数的应用程序。
正如你在这里看到的,我已经为Word文档解决了这个问题(好吧,尽可能多地解决),但现在我发现自己想知道如何从Excel或PowerPoint文档中获取这些数据。
MSDN文档到目前为止没有帮助-我会继续寻找,但如果有人知道答案,我会感激一点帮助。
编辑:所以采取@Andrew(感谢他)提供的信息,我得到了Excel部分的代码:
foreach (Excel._Worksheet s in ExcelBook.Sheets)
{
if (s.UsedRange.Value2 != null)
{
for (int i = 1; i <= s.UsedRange.Value2.GetLength(0); i++)
{
for (int j = 1; j <= s.UsedRange.Value2.GetLength(1); j++)
{
string content = s.UsedRange.Value2[i, j];
MessageBox.Show(i + " - " + j + " - " + content);
}
}
}
}
现在我可以用它来计算工作表中所有单元格中的单词,但是这仍然无助于修订-有人知道如何跟进这个吗?
从代码示例中可以看出,您链接到Word的OM使您能够访问它的修订跟踪特性。方便。
PowerPoint没有任何修订跟踪,所以你没有什么可做的,除非像安德鲁建议的那样,你从一个演示文稿中提取并存储文本,然后再做同样的事情并比较两者。读懂文本,不管怎么说,大部分都不是那么难。比较两组文本寻找修订可能相当复杂。
这里有一些VBA宏用于提取幻灯片上的常规文本(免责声明:我的网站):http://www.pptfaq.com/FAQ00274.htm
这些都很简单,不能处理分组形状、表格、图表等文本,但它们会让你入门。
你应该试试这个
几个月前它帮助了我。