使用c#.net互操作框架控制台从excel文件中获取随机单元格
使用c#.net framework consoleApp从excel文件中获取一个随机单元格,因此我尝试了此操作,但出现了以下异常: System.Runtime.InteropServices.ComeException:'来自HRESULT的异常: 0x800A03EC' 你很接近 请注意,使用c#.net互操作框架控制台从excel文件中获取随机单元格,c#,excel,random,C#,Excel,Random,使用c#.net framework consoleApp从excel文件中获取一个随机单元格,因此我尝试了此操作,但出现了以下异常: System.Runtime.InteropServices.ComeException:'来自HRESULT的异常: 0x800A03EC' 你很接近 请注意,randomName.Next(行)可以返回零。如果是这样的话,.Cells[randomName.Next(rows),1]将显示您看到的错误 如果您的工作表上没有任何内容,则行数将始终等于1,并且您
randomName.Next(行)
可以返回零。如果是这样的话,.Cells[randomName.Next(rows),1]
将显示您看到的错误
如果您的工作表上没有任何内容,则行数将始终等于1,并且您有50%的几率随机数为零
解决方案:将最小值设置为1,如下所示:Next(1,行)
你很接近
请注意,randomName.Next(行)
可以返回零。如果是这样的话,.Cells[randomName.Next(rows),1]
将显示您看到的错误
如果您的工作表上没有任何内容,则行数将始终等于1,并且您有50%的几率随机数为零
解决方案:将最小值设置为1,如下所示:Next(1,行)
Workbook excelBook = excelApp.Workbooks.Open(@"C:\\Projects\\ExcelSingleValue\\kTest.xlsx");
_Worksheet excelSheet = excelBook.Sheets[1];
Range excelRange = excelSheet.UsedRange;
int rows = excelRange.Rows.Count;
int cols = excelRange.Columns.Count;
Random randomName = new Random();
Console.WriteLine((excelRange.Cells[randomName.Next(rows),1].Value2.ToString()));
Console.WriteLine((excelRange.Cells[randomName.Next(1, rows),1].Value2.ToString()));