使用的OpenXML,我的VLOOKUP公式不起作用,直到用户手动编辑细胞 | 您所在的位置:网站首页 › vlookup嵌套iferror › 使用的OpenXML,我的VLOOKUP公式不起作用,直到用户手动编辑细胞 |
我想创建事件的顺序是这样的:使用的OpenXML,我的VLOOKUP公式不起作用,直到用户手动编辑细胞 我的OpenXML的应用程序产生一个新的Excel文件,填充它与来自数据库的数据。 用户打开文件并转到订单工作表。 用户从客户下拉列表中进行选择。 在产品工作表上,有一个VLOOKUP,它根据所选的客户名称检查客户下拉并显示可选的特殊产品。 回到订单表上,产品下拉菜单显示产品的自定义列表。公式我插入: string theFormula = "IFERROR(IF(VLOOKUP(CustomerNameRange, CustomerTable, 8, FALSE) = 0,\"\", VLOOKUP(CustomerNameRange, CustomerTable, 8, FALSE)),\"\")";代码我用来做插入: CalculationProperties prop1 = workbookPart1.Workbook.GetFirstChild(); prop1.ForceFullCalculation = true; prop1.FullCalculationOnLoad = true; prop1.CalculationMode = CalculateModeValues.Auto; prop1.CalculationCompleted = false; :我使用的强制表到重计算 Row r = new Row(); r.RowIndex = (UInt32)index; Cell c = new Cell(); c.CellReference = index; c.DataType = new EnumValue(CellValues.String); c.CellFormula = new CellFormula(theFormula); c.CellFormula.CalculateCell = true; r.AppendChild(c);代码 但是,这些额外的recalc代码似乎没有工作。特殊产品VLOOKUP不会成功重新计算,直到用户手动编辑该单元。如何强制Excel将正常插入的公式单元格对待? 我明白,OpenXML不是,也不是要做recalc(它是一个文档编辑器,而不是一个完整的电子表格引擎)。 来源 2013-09-27 JamesHip |
CopyRight 2018-2019 实验室设备网 版权所有 |