使用 closedXML 和 C# 将一系列单元格值放入列表中

Getting a range of cell values into a list using closedXML and C#

我正在使用 closedXMl 将数据从 excel 检索到我的 C# WPF 中。我正在使用 Range() 函数手动 select 数据检索范围。

如何获取单元格中的值并将它们存储到列表中?有没有办法解决这个问题?下面是我创建的用于检索和存储 excel 数据的方法示例。

public List<double> TableList = new List<double>();

public void test()
    {
        using (var excelWorkbook = new XLWorkbook(@"D:\OneDrive ExcelFile.xlsx"))
        {
            var Ws = excelWorkbook.Worksheet("Sheet1");
            var TableList = Ws.Range("O18:O31");
        }

        for (int i = 0; i < TableList.Count; i++)
        {
            Console.WriteLine("{0}", TableList[i]);
        }
    }

我得到的输出是Sheet1!O18:O31

您当前写入控制台的是列表中的XLRange's default string implementation, which is the range address. If you want to the underlying cells'值,使用:

var tableList = Ws.Range("O18:31")
    .CellsUsed()
    .Select(c => c.Value)
    .ToList();