コード例 #1
0
ファイル: formulas.py プロジェクト: romualdofernandes/pyXLSX
def SUMIF(a, cond, b=[]):
    a, b = _flatten(a), _flatten(b)
    if not b: b = a
    n = 0
    o_cond = cond
    if "<" not in str(cond) and ">" not in str(cond): cond = " == " + str(cond)
    for i in range(len(a)):
        try:
            if eval(str(a[i]) + cond):
                n += float(b[i])
        except:
            if eval(str(a[i]) + "== '" + o_cond + "'"):
                n += float(b[i])
    return n
コード例 #2
0
ファイル: formulas.py プロジェクト: Vayana/pyXLSX
def SUMIF(a, cond, b = []):
    a,b = _flatten(a),_flatten(b)
    if not b: b = a
    n=  0
    o_cond = cond
    if "<" not in str(cond) and ">" not in str(cond): cond = " == "+str(cond)
    for i in range(len(a)):
        try:
            if eval(str(a[i]) + cond):
                n+= float(b[i])
        except:
            if eval(str(a[i]) + "== '"+o_cond+"'"):
                n+= float(b[i])
    return n
コード例 #3
0
ファイル: formulas.py プロジェクト: romualdofernandes/pyXLSX
def SUMPRODUCT(*list):
    n = 0
    for i in range(len(list)):
        _n = 1
        for l in list:
            _n *= _flatten(l)[i]
        n += _n
    return n
コード例 #4
0
ファイル: formulas.py プロジェクト: Vayana/pyXLSX
def SUMPRODUCT(*list):
    n = 0
    for i in range(len(list)):
        _n = 1
        for l in list:
            _n*=_flatten(l)[i]
        n+=_n
    return n
コード例 #5
0
ファイル: formulas.py プロジェクト: romualdofernandes/pyXLSX
def SERIESSUM(x, n, m, a):
    a = _flatten(a)
    r = 0
    for i in range(len(a)):
        r += a[i] * (x**(n + m * i))
    return r
コード例 #6
0
ファイル: formulas.py プロジェクト: Vayana/pyXLSX
def SERIESSUM(x, n, m, a):
    a = _flatten(a)
    r = 0
    for i in range(len(a)):
        r += a[i]*(x**(n+m*i))
    return r