0

我正在寻找一些关于将 Excel 附件加载到内存中的帮助,然后处理 Excel 文档。我遇到的主要问题是使用 EWS 将附件加载到内存中,然后处理文档。最终结果是加载附件,逐行读取excel文档并将数据存储到一个对象中以匹配excel布局。我已经有了存储 EWS 邮件对象的附件属性的代码。然后我需要在这里进行处理...

    Public Function ParseEmails(ByVal emails As List(Of MailDT)) As List(Of    PriceInjectionDT)
    Dim ParsedEmails As New List(Of PriceInjectionDT)

    For Each email As MailDT In emails
        For Each a As Microsoft.Exchange.WebServices.Data.Attachment In email.Attachment
            a.Load()

        Next
    Next


End Function

这使用 .Load 将附件加载到内存中,但不允许我访问 excel 属性:( 帮助!!!

4

1 回答 1

0

您可以使用将附件写入磁盘,而不是将附件加载到内存中FileAttachment.Load。然后,您将代码更改为以下(未经测试):

For Each email As MailDT In emails
    For Each a As Microsoft.Exchange.WebServices.Data.FileAttachment In email.Attachment
        a.Load("C:\temp\" + a.Name);


    Next
Next

将附件保存到磁盘后,您可以使用 Office 主互操作程序集 (PIA) 的功能打开和操作它。我在 CodeProject上找到了一篇关于如何使用 PIA 的文章。

于 2013-03-08T09:50:32.570 回答