我有一个500行和15列的DGV。 我有5个团队成员。 我必须给我的成员分配相同数量的行。 因此,在上面例如,我必须向DGV的每个团队成员发送100行。前100行将进入Emp#1,行101-200将进入Emp#2,依此类推......
我检查了this和this,但我甚至无法尝试使用某些代码来实现此逻辑。
我只在vb.net寻求帮助。
提前谢谢。编辑:我们的预算有点紧张,因此暂时无法投资插件。
答案 0 :(得分:1)
您可以使用EasyXLS Excel library导出一个包含5张和100行的Excel文件:
' Create an instance of the class that exports Excel files, having 5 sheets
Dim xls As New ExcelDocument(5)
Dim n as Integer = dataGridView.Rows.Count()/5
For sheet As Integer = 0 To 4
' Set sheet names
xls.easy_getSheetAt(sheet).setSheetName("Emp#" & (sheet+1))
' Get the sheet table that stores the data
Dim xlsTab As ExcelWorksheet = xls.easy_getSheetAt(sheet)
Dim xlsTable = xlsTab.easy_getExcelTable()
Dim tableRow = 0
' Add data in cells
For row As Integer = 0 To n - 1
For column As Integer = 0 To dataGridView.Columns.Count() - 1
xlsTable.easy_getCell(tableRow, column).setValue( _
dataGridView.Rows(n*sheet + row).Cells(column).Value.ToString())
Next
tableRow = tableRow + 1
Next
Next
' Export Excel file
xls.easy_WriteXLSXFile("C:\Samples\Excel.xlsx")
有关格式化以及如何使用此库的详细信息,您可以从解释how to export a DataGridView to Excel的此链接开始。