我正在使用Interop Excel dll来获取excel文件的每一行的非空单元格。
这是我正在寻找的屏幕截图。
Cany有人建议使用C#代码获取行的最后一个非空单元格
我正在使用下面的代码。我正在获取行的最后一个单元格,但我需要一个特定行的最后一个非空单元格。
Microsoft.Office.Interop.Excel.Application excel = new Application();
Microsoft.Office.Interop.Excel.Workbook workBook =
excel.Workbooks.Open(filename);
Microsoft.Office.Interop.Excel.Worksheet sheet = workBook.Worksheets["Sample"];
Microsoft.Office.Interop.Excel.Range range = sheet.UsedRange;
Microsoft.Office.Interop.Excel.Range last = sheet.Cells.SpecialCells(Microsoft.Office.Interop.Excel.XlCellType.xlCellTypeLastCell, Type.Missing);
//Microsoft.Office.Interop.Excel.Range cellRange = sheet.Range["3:3", last];
//int lastCell = cellRange.Columns.Count;
int lastUsedRow = last.Row;
int lastUsedColumn = last.Column;
long lastColumn = sheet.Cells[2, 2].End(Microsoft.Office.Interop.Excel.XlDirection.xlToLeft).Column;
先谢谢
答案 0 :(得分:-1)
假设您想要获取第2行中最后一个非空单元格的值,其中值可能出现在列之间" A"和" AY"。然后,您将使用Excel公式:
=LOOKUP(2,1/(A2:Y2<>""),A2:Y2)
如果您可以在C#中访问此电子表格公式(我非常确定Visual Studio有相应的公式),那么您可以使用它并解决您的问题。