C# 调用单元格。在Excel中结束

C# 调用单元格。在Excel中结束,c#,excel,C#,Excel,我正在尝试获取列A中的最后一行。 有人知道为什么下面的代码没有编译吗 似乎它不喜欢.End Microsoft.Office.Interop.Excel.Worksheet xlWorkSheet; xlWorkSheet = (Microsoft.Office.Interop.Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1); int iLastRow = xlWorkSheet.Cells[1,"A"] .End(Mic

我正在尝试获取列
A
中的最后一行。 有人知道为什么下面的代码没有编译吗

似乎它不喜欢
.End

Microsoft.Office.Interop.Excel.Worksheet xlWorkSheet; 
xlWorkSheet = 
    (Microsoft.Office.Interop.Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);

int iLastRow = xlWorkSheet.Cells[1,"A"]
    .End(Microsoft.Office.Interop.Excel.XlDirection.xlUp)
    .Row;

它为我编译,你的方法总是返回1,我这样做了,它成功了:

Microsoft.Office.Interop.Excel.Worksheet xlWorkSheet = xlApp.Worksheets[1];
var iLastRow = xlWorkSheet.Range["A1","A65000"].get_End(XlDirection.xlDown).Row;
要查找最后使用的行,我认为此方法更好:

var usedRows = xlApp.WorksheetFunction.CountA(xlWorkSheet.Columns[1]);

使用14.0.0.0版在我的计算机上编译我建议您使用Excel=Microsoft.Office.Interop.Excel位于代码文件的顶部;通过这种方式,您可以说
Excel.xlWorksheet=…
并使用
Excel.XlDirection.xlUp
。收到任何错误消息?如何在ePlus中执行此操作?@Ivan如果您有问题,请单击“提问”按钮\