【发布时间】:2016-09-13 01:21:27
【问题描述】:
我使用此代码将我的记录导出到 Excel,它工作正常,但它只导出一行。无论如何要在datagridview中记录我的所有数据吗?另外,我对VB中的水晶报表不熟悉,所以我想使用按钮点击事件..
Dim xlApp As Microsoft.Office.Interop.Excel.Application
Dim xlWorkBook As Microsoft.Office.Interop.Excel.Workbook
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.ApplicationClass
xlWorkBook = xlApp.Workbooks.Add(misValue)
xlWorkSheet = xlWorkBook.Sheets("sheet1")
For i = 0 To DataGridView1.RowCount - 2
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.ToString()
Next
Next
Next
xlWorkSheet.SaveAs("D:\vbexcel.xlsx")
xlWorkBook.Close()
xlApp.Quit()
releaseObject(xlApp)
releaseObject(xlWorkBook)
releaseObject(xlWorkSheet)
MsgBox("You can find the file D:\vbexcel.xlsx")
End Sub
Private Sub releaseObject(ByVal obj As Object)
Try
System.Runtime.InteropServices.Marshal.ReleaseComObject(obj)
obj = Nothing
Catch ex As Exception
obj = Nothing
Finally
GC.Collect()
End Try
我无法对发布此代码的人发表评论,因为我的声誉很低...
【问题讨论】:
-
兄弟,你的问题很不清楚。真正的问题是什么?
Crystal Reports和这个有什么关系? -
有人说我得用
crystal report生成报表,用excel打开。但我不熟悉它,所以我在这里搜索了一些答案,我找到了这段代码。我使用此代码将datagridview数据导出到excel,但它只保存一行。我需要将datagridview中的所有数据保存到excel。有什么办法吗,先生? -
在你的代码中,你也想包含标题,对吧?
-
是的,先生。我的
DatagridView中有 50 条记录,但只显示一条。
标签: vb.net excel datagridview