我想要一个DataGridView到Excel工作表的内容通过使用下面的代码错误HRESULT 0x800a03ec试图将值分配给Excel单元格
Dim xlApp As New Microsoft.Office.Interop.Excel.Application
Dim xlBook As Microsoft.Office.Interop.Excel.Workbook = xlApp.Workbooks.Add
Dim xlSheet As Microsoft.Office.Interop.Excel.Worksheet = CType(xlBook.Sheets(1), Microsoft.Office.Interop.Excel.Worksheet)
xlSheet.Name = "MySheet"
xlApp.Visible = True
With xlSheet
For C As Integer = 0 To DGV_IntCalc.Columns.Count - 1
.Range(.Cells(1, C + 1)).Value = DGV_IntCalc.Columns(C).HeaderText
For R As Integer = 0 To DGV_IntCalc.RowCount - 1
.Range(.Cells(R + 2, C + 1)).Value = DGV_IntCalc.Rows(R).Cells(C).Value
Next
Next
End With
我得到错误的.Range(.Cells(1, C + 1)).Value = DGV_IntCalc.Columns(C).HeaderText
我出口有Option Strict On
所以我不能使用.Cells(1, C + 1).Value = DGV_IntCalc.Columns(C).HeaderText
,因为后期绑定
我在哪里错了?
我想你需要'.Range(.Cells(1,C + 1))值= DGV_IntCalc.Columns(。 C + 1).HeaderText',因为当'C = 0'时,'Columns(0)'是什么? – BruceWayne
@BruceWayne我检查了'DGV_IntCalc.Columns(C).HeaderText'的值,它是一个包含DGV第一列标题文本的字符串。问题必须在行的第一部分:'.Range(.Cells(1,C + 1))。Value =' – genespos
对于故障排除,只需制作'.Range(.Cells(1,1))。价值“,看它是否仍然会抛出错误。 – BruceWayne