我需要按第11列对工作表进行排序。该代码有效,但包含列标题,以便其在工作表中向下移动。
我已经尝试了以下代码
worksheet.Cells[1, 1].EntireRow.Font.Bold = true;
var startCell = (Excel.Range)worksheet.Cells[1, 1];
var endCell = (Excel.Range)worksheet.Cells[row, 12];
Excel.Range range = worksheet.Range[startCell, endCell];
range.Borders.LineStyle = Excel.XlLineStyle.xlContinuous;
range.Borders.Weight = Excel.XlBorderWeight.xlThin;
Excel.Range fullDataRange = worksheet.UsedRange;
fullDataRange.Sort(fullDataRange.Columns[11],
Excel.XlSortOrder.xlAscending);
excelApp.ActiveWorkbook.SaveAs(txtOutputFolder.Text + "\\" +
filestart + " Instructions" + DateTime.Now.ToString(" dd.MM") + ".xlsx");
excelApp.ActiveWorkbook.Close();
答案 0 :(得分:0)
您可以选择所需的范围:
worksheet.Range("A1:H8")
答案 1 :(得分:0)
如果您查看Sort文档,将会看到您可以指定排序范围是否具有标题。只需在您的排序命令中添加一个命名参数即可:
fullDataRange.Sort(fullDataRange.Columns[11], Excel.XlSortOrder.xlAscending, Header:xlYes);
,排序时第一行将被忽略。