string TablePath = Storage.ProjectPath + "\\Tables\\";
string ObjectRepPath = TablePath + "ObjectRepository.xlsx";
string locType = " ";
string locParm = " ";
var workbook = new XLWorkbook(ObjectRepPath);
var ws1 = workbook.Worksheet(1).RangeUsed().RowsUsed().Skip(1);
var totalRows = ws1.Count();
var row = ws1.Row;
for (int rCnt = 1; rCnt <= totalRows; rCnt++)
{
var objPage = ws1.Cell(rCnt, 0).Value;
var objElement = ws1.Cell(rCnt, 1).Value;
if (objPage == page && objElement == element)
{
locType = ws1.Cell(rCnt, 2);
locParm = ws1.Cell(rCnt, 3);
}
}
我正在尝试使用 ClosedXML 从 excel 文件中读取数据。我发现的每个引用资料都说您可以使用 Worksheet.Cell(r,c),但它不包含 .Cell 的定义。 .Row 也没有。我试过为 ClosedXML 下的所有内容都包含“使用”语句,但这也不起作用。我错过了什么?
给出的错误...“IEnumerable[IXLRangeRow]”不包含“Cell”的定义,并且找不到接受“IEnumerable[IXLRangeRow]”类型的第一个参数的扩展方法“Cell”(您是否缺少使用指令或程序集引用?)
ws1.Cell 和 ws1.Row 都出错
支持这一点的引用文献应该有效...... - Reading from Excel File using ClosedXML - https://github.com/closedxml/closedxml/wiki/Cell-Values
最佳答案
好的,找到解决方案了。感谢@Crowcoder 的指导...
var workbook = new XLWorkbook(ObjectRepPath);
var rows = workbook.Worksheet(1).RangeUsed().RowsUsed().Skip(1);
foreach (var row in rows)
{
var rowNumber = row.RowNumber();
objPage = row.Cell(1).GetString();
objElement = row.Cell(2).GetString();
if (objPage == page && objElement == element)
{
locType = row.Cell(3).GetString();
locParm = row.Cell(4).GetString();
}
}
关于c# - 如何使用 ClosedXML 从 excel 文件中读取单元格值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51790649/