首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用C#以编程方式获取最后填充的excel行

使用C#以编程方式获取最后填充的excel行
EN

Stack Overflow用户
提问于 2011-10-06 21:00:54
回答 7查看 105K关注 0票数 32

我正在尝试使用Microsoft.interop.Excel库和C#以编程方式获取excel工作表的最后一行。我之所以这样做,是因为我负责遍历excel电子表格中的所有记录,并对它们执行某种操作。具体地说,我需要最后一行的实际数字,因为我将把这个数字放入一个函数中。有谁知道怎么做吗?

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2011-10-06 21:08:07

几种方式,

代码语言:javascript
复制
using Excel = Microsoft.Office.Interop.Excel;

Excel.ApplicationClass excel = new Excel.ApplicationClass();
Excel.Application app = excel.Application;
Excel.Range all = app.get_Range("A1:H10", Type.Missing);

代码语言:javascript
复制
Excel.Range last = sheet.Cells.SpecialCells(Excel.XlCellType.xlCellTypeLastCell, Type.Missing);
Excel.Range range = sheet.get_Range("A1", last);

int lastUsedRow = last.Row;
int lastUsedColumn = last.Column;
票数 62
EN

Stack Overflow用户

发布于 2011-10-07 19:41:43

Pryank's answer是最适合我的。我在最后添加了一点(.Row),所以我返回的不只是一个range,而是一个integer

代码语言:javascript
复制
int lastRow = wkSheet.Cells.SpecialCells(XlCellType.xlCellTypeLastCell, Type.Missing).Row;
票数 15
EN

Stack Overflow用户

发布于 2011-10-06 21:11:52

对于涉及Excel对象模型的问题,首先在VBA中试用它通常更容易,然后再转换为C#是相当简单的。

在这种情况下,在VBA中执行此操作的一种方法是:

代码语言:javascript
复制
Worksheet.UsedRange.Row + Worksheet.UsedRange.Rows.Count - 1
票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7674573

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档