我使用 var excelFile = new ExcelQueryFactory(excelPath)
IQueryable<Row> excelSheetValues = from workingSheet in excelFile.Worksheet(sheetName) select workingSheet;
string[] headerRow = excelFile.GetColumnNames(sheetName).ToArray();
生成了一个excel,我想在一个工作表中获取所有列名。我尝试过使用{{1}}
{{1}}
但是它给我一个错误,我们不能使用linq获得excel的列名称,因为它在使用Micrsoft Office dll时工作正常
答案 0 :(得分:1)
尝试这样的事情。
var sheet= package.Workbook.Worksheets[1];
foreach (var firstRowCell in sheet.Cells[sheet.Dimension.Start.Row, sheet.Dimension.Start.Column, 1, sheet.Dimension.End.Column])
MessageBox.Show(firstRowCell.Text);
答案 1 :(得分:1)
@D Rao,对我来说这很好用
public static string[] GetHeaderColumns(this ExcelWorksheet worksheet)
{
List<string> columnNames = new List<string>();
foreach (var startRowCell in sheet.Cells[worksheet.Dimension.Start.Row, worksheet.Dimension.Start.Column, 1, worksheet.Dimension.End.Column])
columnNames.Add(startRowCell.Text);
return columnNames.ToArray();
}