2015-01-21 69 views
0

當我試圖挽救我的datagridview組件練成我得到一個錯誤異常:0x800A03EC時添加紙張到Excel工作簿

Exception from HRESULT: 0x800A03EC

解決此行:xlWorkSheet = xlWorkBook.Sheets.Add("[Sheet1]")

有是我的代碼的一部分:

Dim xlWorkBook As Microsoft.Office.Interop.Excel.Workbook 
    Dim xlApp As Microsoft.Office.Interop.Excel.Application 
    Dim xlWorkSheet As Microsoft.Office.Interop.Excel.Worksheet 
    Dim misValue As Object = System.Reflection.Missing.Value 
    Dim i As Integer 
    Dim j As Integer 


    xlApp = New Microsoft.Office.Interop.Excel.Application 
    xlWorkBook = xlApp.Workbooks.Add(misValue) 
    xlWorkSheet = xlWorkBook.Sheets.Add("[Sheet1]") 


    For i = 0 To DataGridView1.RowCount - 1 
     For j = 0 To DataGridView1.ColumnCount - 1 
      For k As Integer = 1 To DataGridView1.Columns.Count 
       xlWorkSheet.Cells(1, k) = DataGridView1.Columns(k - 1).HeaderText 
       xlWorkSheet.Cells(i + 2, j + 1) = DataGridView1(j, i).Value 
      Next 
     Next 
    Next 

    xlWorkSheet.SaveAs("c:\users\500998877\documents\bg\dtgv1.xlsx") 
    xlWorkBook.Close() 
    xlApp.Quit() 

    Process.Start("c:\users\500998877\documents\bg\dtgv1.xlsx") 
+0

好了,查一查預計什麼類型的參數爲['Worksheets.Add()'方法(https://msdn.microsoft.com/en開始你的研究-us/library/office/ff838966(v = office.15).aspx) – 2015-01-21 08:13:35

+0

我是vb中的新手,無法實現我應該添加什麼 'xlWorkSheet = xlWorkBook.Sheets.Add(「Sheet1」, ,,)' – 2015-01-21 08:20:09

+0

我不知道爲什麼我應該添加更多的參數,因爲默認值是商品 – 2015-01-21 08:29:29

回答

0

未經測試,但嘗試以下方法:

xlWorkSheet = xlWorkBook.Sheets.Add 
xlWorksheet.Name = "MyNewSheet" 

請注意,Excel中可能還會有一個默認的「Sheet1」實例。

你不妨與this MSDN reference page

+0

謝謝,它的工作! :) 無論如何,我找到了這樣的其他方式: 'xlWorkBook = xlApp.Workbooks.Add(misValue) xlWorkSheet = xlWorkBook.Sheets.Add()' – 2015-01-21 10:02:28

相關問題