C#ClosedXML将特定行中的单元格中的值分配给字符串
我在脚本的其他地方使用ClosedXML,在这里我像这样迭代每一行,它可以工作C#ClosedXML将特定行中的单元格中的值分配给字符串,c#,closedxml,C#,Closedxml,我在脚本的其他地方使用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.Cel
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 damnit = dataRow.Cell(1).GetString();
System.Diagnostics.Debug.WriteLine("Why is this damn thing not working... " + damnit);
输出:为什么这该死的东西不工作
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 damnit = dataRow.Cell(1).GetString();
System.Diagnostics.Debug.WriteLine("Why is this damn thing not working... " + damnit);
它只是空着回来。没有错误。有人看到我没有看到的吗?好吧,我找到了解决办法 我换了台词。。。 var ws=workbook.Worksheets.Add(“单元格值”) 到。。。。 var ws=工作簿。工作表(1) 而现在这一切都起作用了。。。。
Storage.StreetAddress=ws.Cell(xlRow,1.GetString() 什么是
datarow.Cell(1).Address
?如果在Excel中打开文件,该地址的值是多少?地址是随机的,因此每次运行都不同。当我将其更改为.Address并运行时,它返回“C84”。文件中C84处的值为“AL”。所以它是一个有效/填充的字段。ws.Cell(“C84”).GetString()返回什么?还是一个空字符串?该单元格是否包含公式或值?是的,返回时也没有任何内容。实际的C84单元格的值为“AL”。此外,如果有帮助。。。。。字符串testdata=cell.ToString()。。。。返回“ClosedXML.Excel.XLCell”/string testdata=cell.Value.ToSting()。。。。返回Nothing将此标记为答案。