获取 excel 行总和到变量而不是单元格

Get excel row sum into variable instead of cell

我正在尝试从 excel 文档中检索一行的总和。 谷歌搜索时,所有解决方案都涉及将 =SUM(1:1) 之类的公式写入单元格,然后将结果写入变量。

因为我不想编辑 excel 文件,所以我想知道是否可以在没有进站的情况下将行范围的总和直接检索到变量中?

提前致谢!

这会将两个单元格的值之和保存到"myVariable"

    Dim myWB As Workbook
    Set myWB = ActiveWorkbook
    Set ws = myWB.Sheets(1)
    Dim myVariable As Variant
    myVariable = ws.Cells(1,1).Value + ws.Cells(2,1).Value

如果您使用的是 xlsx 文件,您可以使用这个很棒的库:

https://closedxml.codeplex.com/documentation

它使用 DocumentFormat.OpenXml 您可以使用此命令安装 closedXml 和依赖项:

Install-Package ClosedXML 

在第一行求和的示例:

        //open the excel file
        var wb = new XLWorkbook("excel File path");

        //get the first worksheel
        var ws = wb.Worksheet(0);

        var lineNumber = 0;
        var startColumn = 0;
        var endColumn = 10;

        var cells = ws.Range(lineNumber, startColumn, lineNumber, endColumn).Cells().ToList();
        var sum = cells.Sum(xlCell => (int) xlCell.Value);