【问题标题】:How to import specific excel range to datagridview如何将特定的excel范围导入datagridview
【发布时间】:2021-06-07 23:43:17
【问题描述】:
我想使用 GemBox 将 excel 文件导入 datagridview。我对 GemBox 相当陌生,我似乎无法弄清楚如何。我只想从单元格“A9”导入到单元格“H32”。
var workbook = ExcelFile.Load(openFileDialog.FileName);
DataGridViewConverter.ExportToDataGridView(workbook.Worksheets.ActiveWorksheet, this.dgvMain, new ExportToDataGridViewOptions() { ColumnHeaders = true });
谢谢!
【问题讨论】:
标签:
c#
gembox-spreadsheet
【解决方案1】:
以下是导入特定单元格的方法:
var workbook = ExcelFile.Load(openFileDialog.FileName);
var worksheet = workbook.Worksheets.ActiveWorksheet;
var options = new ExportToDataGridViewOptions();
options.ColumnHeaders = true;
options.StartRow = 8; // Start from row 9, index 8.
options.NumberOfRows = 24; // End with row 32.
options.StartColumn = 0; // start with column A, index 0.
options.NumberOfColumns = 8; // End with column H.
DataGridViewConverter.ExportToDataGridView(worksheet, this.dgvMain, options);
还有另一种方式,您可以通过使用来自CellRange 对象的属性来指定它:
var workbook = ExcelFile.Load(openFileDialog.FileName);
var worksheet = workbook.Worksheets.ActiveWorksheet;
var range = worksheet.Cells.GetSubrange("A9:H32");
var options = new ExportToDataGridViewOptions();
options.ColumnHeaders = true;
options.StartRow = range.FirstRowIndex;
options.NumberOfRows = range.Height;
options.StartColumn = range.FirstColumnIndex;
options.NumberOfColumns = range.Width;
DataGridViewConverter.ExportToDataGridView(worksheet, this.dgvMain, options);