将工作表复制到不同excel实例中的其他工作簿VB

将工作表复制到不同excel实例中的其他工作簿VB,excel,vb.net,Excel,Vb.net,我需要在不同的excel实例中将工作表从一个工作簿复制到另一个工作簿。当使用下面的代码时,我从HRESULT:0x800A03EC的inputsht.CopyAfter:=图表行收到错误“异常,有人能告诉我是什么问题吗?excelWB已定义为公共变量 Private Sub ChartInExcelBtn_Click(sender As Object, e As RoutedEventArgs) Handles ChartInExcelBtn.Click Dim excelWB As

我需要在不同的excel实例中将工作表从一个工作簿复制到另一个工作簿。当使用下面的代码时,我从HRESULT:0x800A03EC的inputsht.CopyAfter:=图表行收到错误“异常,有人能告诉我是什么问题吗?excelWB已定义为公共变量

Private Sub ChartInExcelBtn_Click(sender As Object, e As RoutedEventArgs) Handles ChartInExcelBtn.Click

    Dim excelWB As Excel.Workbook
    Dim inputsht As Worksheet
    Dim Chartfile As Excel.Application = New Microsoft.Office.Interop.Excel.Application()
    Dim chartworkbook As Excel.Workbook
    Dim chartsheet As Excel.Worksheet


    excelWB = System.Runtime.InteropServices.Marshal.BindToMoniker(xlfile)
    inputsht = excelWB.Worksheets("input")


    chartworkbook = Chartfile.Workbooks.Add
    chartsheet = chartworkbook.Worksheets.Add

    'inputsht.Copy(After:=chartworkbook.Worksheets("Sheet1"))
    inputsht.Copy(After:=chartsheet)

    Chartfile.Visible = True


End Sub

我在下面的链接中找到了答案:

因此,我更改了如下代码,它正在工作:

Private Sub ChartInExcelBtn_Click(sender As Object, e As RoutedEventArgs) Handles ChartInExcelBtn.Click
    Dim excelWB As Excel.Workbook
    Dim inputsht As Worksheet
    Dim Chartfile As Excel.Application = New Microsoft.Office.Interop.Excel.Application()


    excelWB = System.Runtime.InteropServices.Marshal.BindToMoniker(xlfile)
    inputsht = excelWB.Worksheets("input")
    inputsht.Copy(Type.Missing, Type.Missing)
    excelApp.DisplayAlerts = False
    excelApp.Workbooks(2).SaveAs("c:\test.xlsx")

    Chartfile.Workbooks.Open("c:\test.xlsx", Notify:=False, ReadOnly:=True)
    Chartfile.Visible = True
    excelApp.Workbooks(2).Close(SaveChanges:=False)



End Sub

我犯了个错误,什么都没说,我有一便士!System.Runtime.InteropServices.ComeException:'来自HRESULT的异常:0x800A03EC@manochehr在哪一行?@robertcolumbia inputsht.CopyAfter:=图表页