C# ClosedXML 将特定行中单元格的值分配给字符串
C# ClosedXML assign values from cells in a specific row to string
我在我的脚本的其他地方使用 ClosedXML,我像这样遍历每一行并且它有效。
var workbook = new XLWorkbook(ObjectRepPath);
var rows = workbook.Worksheet(1).RangeUsed().RowsUsed().Skip(1);
foreach (var row in rows)
{
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();
}
}
之后,我需要从随机选择的行中的单元格中提取数据。这是我到目前为止所得到的,但没有用...
var workbook = new XLWorkbook(extFile);
var ws = workbook.Worksheets.Add("Cell Values");
var rnd = new Random();
int rowNum = rnd.Next(2, workbook.Worksheet(1).RangeUsed().RowsUsed().Count());
var dataRow = ws.Row(rowNum);
string dangit = dataRow.Cell(1).GetString();
System.Diagnostics.Debug.WriteLine("Why is this dang thing not working... " + dangit);
输出:为什么这该死的东西不工作...
它只是空着回来。没有错误。有人看到我没看到的东西吗?
好的,我找到了解决方案。
我改线了...
var ws = workbook.Worksheets.Add("Cell Values");
到....
var ws = workbook.Worksheet(1);
现在可以了....
Storage.StreetAddress = ws.Cell(xlRow, 1).GetString();
我在我的脚本的其他地方使用 ClosedXML,我像这样遍历每一行并且它有效。
var workbook = new XLWorkbook(ObjectRepPath);
var rows = workbook.Worksheet(1).RangeUsed().RowsUsed().Skip(1);
foreach (var row in rows)
{
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();
}
}
之后,我需要从随机选择的行中的单元格中提取数据。这是我到目前为止所得到的,但没有用...
var workbook = new XLWorkbook(extFile);
var ws = workbook.Worksheets.Add("Cell Values");
var rnd = new Random();
int rowNum = rnd.Next(2, workbook.Worksheet(1).RangeUsed().RowsUsed().Count());
var dataRow = ws.Row(rowNum);
string dangit = dataRow.Cell(1).GetString();
System.Diagnostics.Debug.WriteLine("Why is this dang thing not working... " + dangit);
输出:为什么这该死的东西不工作...
它只是空着回来。没有错误。有人看到我没看到的东西吗?
好的,我找到了解决方案。
我改线了... var ws = workbook.Worksheets.Add("Cell Values");
到.... var ws = workbook.Worksheet(1);
现在可以了.... Storage.StreetAddress = ws.Cell(xlRow, 1).GetString();