bc30526 属性单元格'read only' DataGridView1 以 excel



我从这行得到错误xlWorkSheet.Cells(I+1,j+1(=DataGridView1(j,I(.Value.ToString((错误是说bc30526属性单元格是"只读">如何配置这个?

Dim xlApp As Excel.Application
Dim xlWorkBook As Excel.Workbook
Dim xlWorkSheet As Excel.Worksheet
Dim misValue As Object = System.Reflection.Missing.Value
Dim i As Integer
Dim j As Integer
xlApp = New Excel.ApplicationClass
xlWorkBook = xlApp.Workbooks.Add(misValue)
xlWorkSheet = xlWorkBook.Sheets("sheet1")
For i = 0 To DataGridView1.RowCount - 2
For j = 0 To DataGridView1.ColumnCount - 1
xlWorkSheet.Cells(i + 1, j + 1) = DataGridView1(j, i).Value.ToString()
Next
Next
xlWorkSheet.SaveAs("C:vbexcel.xlsx")
xlWorkBook.Close()
xlApp.Quit()

几乎可以肯定的是,

xlWorkSheet.Cells(i + 1, j + 1).Value = DataGridView1(j, i).Value.ToString()

正如所写的,您正试图将一个字符串分配给Cell;即使它不是只读的,也不会起作用。

这可能与VBA有所不同。我认为VBA允许通过默认属性来消除Value。我不认为这在.NET中仍然存在,除了索引器(可以省略访问集合的Item(。

最新更新