javascript - 将公式 (setFormula) 放在 SpreadJS header (colHeader) 上

标签 javascript spreadjs

我目前有一个使用 AngularJS/SpreadJS 的解决方案,我们需要使用公式更新标题部分。当我们使用 setValue 更改标题中的单元格值时,一切都显示正常,但是我们需要使用 setFormula 显示公式,在这些情况下,公式将被计算并显​​示在属于我的数据所在的实际工作表的行中。 p>

//Does not work and displays in row 2 of the sheet:
sheet.setFormula(2, i, formula, GC.Spread.Sheets.SheetArea.colHeader);

//Displays value in actual header in teh correct location/header cell                
sheet.setValue(2, i, 'my formula!', GC.Spread.Sheets.SheetArea.colHeader);

任何帮助将不胜感激。谢谢!

最佳答案

实现以下解决方案以在电子表格的列标题中实现 SUM 公式。可以在电子表格事件(如 cellChanged、clipBoardPasted)上调用此函数来实现功能。

   var spread = new GC.Spread.Sheets.Workbook($("#ss").get(0), { sheetCount: 2 });
    var displaySheet = spread.getSheet(0);
    displaySheet.setRowCount(2, GC.Spread.Sheets.SheetArea.colHeader);

    for (var i = 0; i < 10; i++) {
        for (var j = 0; j < 10; j++) {
            displaySheet.setValue(i, j, i + j);
        }
    }
    $("#btnSetAutoTotal").click(function () {
        setTotal(displaySheet, 0);
    });

   function setTotal(sheet, columnIndex) {
    var formula = "SUM(R[1]C[1]:R[10]C[10]";
    value = GC.Spread.Sheets.CalcEngine.evaluateFormula(sheet, 'SUM(A:A)', 0, 
   columnIndex, false);   
   sheet.setValue(0, columnIndex, value, GC.Spread.Sheets.SheetArea.colHeader);

};

关于javascript - 将公式 (setFormula) 放在 SpreadJS header (colHeader) 上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42988006/

相关文章:

javascript - GWT Javascript 注入(inject)和 JSNI

javascript - 对字符串或流使用自动前缀

javascript - 微符号字符在编辑器中显示不同以及如何在网络中安全地表示

Angular库编译时错误 "Invariant violated: No format-path or format"

javascript - 使用 jsdom 和 nodeJS 加载 SpreadJS

Javascript 嵌套对象

javascript - AWS API Gateway Websocket Api - 向所有连接的客户端广播消息

javascript - 如何独立于时区过滤日期?

javascript - 如何为 SpreadJs 数据网格创建自定义绑定(bind)以对齐定义的列?

javascript - SpreadJS ClipboardPasteOptions 设置为 "All"但未应用格式