添加复杂的INDEX公式会导致Excel文件错误

时间:2018-03-06 07:28:58

标签: excel openxml-sdk

我在使用OpenXML SDK在Excel电子表格中插入此公式时遇到问题。

=INDEX(Codes[[#All];[code1:]];MATCH(MySheet!B1674;Codes[[#All];[code2:]];0))

我只是通过使用以下方法将文本添加到单元格中来实现此目的:

private Cell ConstructCellFormula(string formula)
    {
        Cell cell = new Cell();
        CellFormula cFormula = new CellFormula();
        cFormula.Text = formula;
        cell.Append(cFormula);
        return cell;
    }

我知道我在调用它时遗漏了一些东西。

我正在处理的电子表格是XLSM文件中很多人的一部分。

  

代码

也在那里。

我正在做的是 - 删除所有现有行并根据数据库中的数据添加新行。这就是文件出现问题的时候。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

解决方案是简单地使用EN-US语法和逗号而不是分号。

=INDEX(Codes[[#All],[code1:]],MATCH(MySheet!B1674,Codes[[#All],[code2:]],0))