首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >用ClosedXML读取Excel文件

用ClosedXML读取Excel文件
EN

Stack Overflow用户
提问于 2015-04-16 00:15:48
回答 3查看 93.3K关注 0票数 38

我的Excel文件不在表格数据中。我正在尝试从excel文件中读取。我在我的excel文件中有表格形式的部分。

我需要遍历表格形式的第3行到第20行,并读取数据。

下面是我的代码片段:

代码语言:javascript
复制
     string fileName = "C:\\Folder1\\Prev.xlsx";
     var workbook = new XLWorkbook(fileName);
     var ws1 = workbook.Worksheet(1); 

如何遍历第3行到第20行并读取第3、4、6、7、8列?另外,如果一行是空的,我如何确定它,这样我就可以跳过它,而不会读取到每一列都有一个给定行的值。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-04-16 18:15:53

要访问行,请执行以下操作:

代码语言:javascript
复制
var row = ws1.Row(3);

要检查行是否为空,请执行以下操作:

代码语言:javascript
复制
bool empty = row.IsEmpty();

要访问行中的单元格(列):

代码语言:javascript
复制
var cell = row.Cell(3);

要从单元格获取值,请执行以下操作:

代码语言:javascript
复制
object value = cell.Value;
// or
string value = cell.GetValue<string>();

有关详细信息,请参阅documentation

票数 46
EN

Stack Overflow用户

发布于 2018-05-05 04:56:46

这是我的果酱。

代码语言:javascript
复制
var rows = worksheet.RangeUsed().RowsUsed().Skip(1); // Skip header row
foreach (var row in rows)
{
    var rowNumber = row.RowNumber();
    // Process the row
}

如果你只使用.RowsUsed(),你的范围将包含大量的列。比实际填写的要多得多!

因此,首先使用.RangeUsed()来限制范围。这将帮助您更快地处理文件!

还可以使用.Skip(1)跳过列标题行(如果有列标题行)。

票数 19
EN

Stack Overflow用户

发布于 2017-12-01 17:17:37

我更喜欢使用RowsUsed()方法来获取那些非空的或者已经被用户编辑过的行的列表。这样,我就可以避免检查每一行是否为空。

我不确定它是否符合您在帖子中描述的确切问题陈述,但此代码片段可以帮助您处理所有非空行中的第3行到第20行,因为我在开始处理之前已经过滤掉了空行。在开始处理之前过滤非空行可能会影响您实际要处理的行号。

但我觉得在处理excel表格的行时,RowsUsed()方法在任何一般情况下都是非常有用的。

代码语言:javascript
复制
string fileName = "C:\\Folder1\\Prev.xlsx";
using (var excelWorkbook = new XLWorkbook(fileName))
{
    var nonEmptyDataRows = excelWorkbook.Worksheet(1).RowsUsed();

    foreach (var dataRow in nonEmptyDataRows)
    {
       //for row number check
       if(dataRow.RowNumber() >=3 && dataRow.RowNumber() <= 20)
       {
           //to get column # 3's data
           var cell = dataRow.Cell(3).Value;
       }
    }
}
票数 16
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29655498

复制
相关文章

相似问题

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