【问题标题】:Adding complicated INDEX formula results in Excel file error添加复杂的 INDEX 公式导致 Excel 文件错误
【发布时间】:2018-08-27 16:15:37
【问题描述】:

我在使用 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 文件中许多文件的一部分。

代码

也在那里。

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

任何帮助将不胜感激。

【问题讨论】:

  • 你试过用逗号代替分号的 EN-US 语法吗?
  • @Jeeped 不,我没有。你能告诉我如何为此设置语法吗?
  • 将所有分号改为逗号。
  • 我的伙计,你是个天才 :D 它奏效了,我从没想过。谢谢。

标签: excel openxml-sdk


【解决方案1】:

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-05
    • 1970-01-01
    相关资源
    最近更新 更多