Jexcel使用SUMIF函数

时间:2018-07-25 20:36:06

标签: javascript jexcelapi

这是我有史以来第一篇关于堆栈溢出的文章,如果在我的问题需要解决的地方犯了一些错误,我们深感抱歉。

无论如何,我试图在Jexcel中使用excel中的SUMIF函数,却没有任何运气。

在寻找解决方案时,我找到了以下链接:https://bitbucket.org/leonate/jxls/issues/71/excel-formula-sumif-doesnt-work-with

这似乎解决了问题,但是我不知道如何在Jexcel中更改处理引擎。

如果这很简单,请记住,我是HTML,CSS和Java的新手。

我的代码(使用示例示例)如下:

<html>
<dependency>
    <groupId>org.jxls</groupId>
    <artifactId>jxls</artifactId>
    <version>2.4.6</version>
</dependency>
<script src="https://cdnjs.cloudflare.com/ajax/libs/numeral.js/2.0.6/numeral.min.js"></script>
<script src="http://cdn.bossanova.uk/js/excel-formula.min.js"></script>

<script src="https://cdnjs.cloudflare.com/ajax/libs/jexcel/1.5.0/js/jquery.jexcel.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jexcel/1.5.0/css/jquery.jexcel.min.css" type="text/css" />

<div id="my"></div>

<script>
var data = [
    ['M',5],
    ['E',10],
    ['A',3],
    ['A',4],
    ['Total','=SUMIF(A2:A6,"M",B2:B6)']
]

$('#my').jexcel({
    data:data,
    columns: [
        { type:'text' },
        { type:'numeric' },
    ],
    colHeaders: ['Regular Driving','Hours'],
    colWidths: [ 200, 80 ]
});

$('#my').jexcel('updateSettings', {
    table: function (instance, cell, col, row, val, id) {
        // Format numbers
        if (col == 2 || col == 3) {
            // Get text
            txt = $(cell).text();
            // Format text
            txt = numeral(txt).format('0,0.00');
            // Update cell value
            $(cell).html(' $ ' + txt);
        }

        // Bold the total row
        if ($(cell).text() == 'Total') {
            $('.r' + row).css('font-weight', 'bold');
            $('.r' + row).css('background-color', '#fffaa3');
        }
    }
});
</script>
</html>

Here is the result when I run my code

非常感谢您。

0 个答案:

没有答案