【问题标题】:Modify an embedded Excel object inside a Word doc在 Word 文档中修改嵌入的 Excel 对象
【发布时间】:2010-11-05 18:43:41
【问题描述】:

我需要示例代码,甚至是第 3 方对象,它可以让我访问嵌入在 word 文档中的 excel 对象。我已经尝试过 Aspose,但他们还没有这些功能。有没有人这样做过,或者你知道第 3 方对象会这样做吗?

【问题讨论】:

    标签: vb.net excel ms-word ole


    【解决方案1】:

    好的,我做到了!我很欣赏 Remou 发布的链接。在我克服了最初的障碍后,它确实提供了一些支持......

    这是我的代码:

            WordApp.Documents.Open("C:\Report.docx")
            Dim iOLE As Int16
            Dim oSheet As Object
            Dim oOLE As Object
            For iOLE = 1 To WordApp.ActiveDocument.Content.ShapeRange.Count 'These are the embedded objects
                If Not WordApp.ActiveDocument.Content.ShapeRange(iOLE).OLEFormat Is Nothing Then '- make sure it is OLE
                    If WordApp.ActiveDocument.Content.ShapeRange(iOLE).OLEFormat.ProgID.Contains("Excel") Then '- make sure it's an Excel object
                        '- I have found an Excel Object!!!
                        WordApp.ActiveDocument.Content.ShapeRange(iOLE).OLEFormat.Activate()
                        oOLE = WordApp.ActiveDocument.Content.ShapeRange(iOLE).OLEFormat.Object
                        oSheet = oOLE.Worksheets(1) '- I can assert that each of them has at least one sheet and that I need the first one...
                        oSheet.Range("BB3") = "I did it!" '- setting some text to verify I made it in...
    
                    End If
    
                End If
    
            Next
    
            WordApp.ActiveDocument.SaveAs("c:\temp\report_test.docx")
    

    【讨论】:

      【解决方案2】:

      您可以在这里找到一些信息:VBScript and multilevel OLE?

      【讨论】:

      • 啊,伙计,这看起来很有希望...当我检查 ActiveDocument 上的 InlineShapes 时,计数为零 (0)。我会继续玩这个。感谢您的建议。
      猜你喜欢
      • 2023-04-09
      • 2021-04-30
      • 1970-01-01
      • 2015-08-30
      • 2011-05-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多