V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
mathcoder23
V2EX  ›  程序员

excel 列转换问题

  •  
  •   mathcoder23 · 2016-03-28 14:54:25 +08:00 · 2223 次点击
    这是一个创建于 3167 天前的主题,其中的信息可能已经有所发展或是发生改变。

    有两列例如: 金额 是否报销 1 是 2 否 3 是 求出未报销的总金额

    对两列对应相乘求和,但 B 列要转换一下比如判断是否为是 我增加了“是否报销”的逻辑列分别为: IF(B2="是",1,0) IF(B3="是",1,0) IF(B4="是",1,0) 增加了逻辑列后可以很方便的用 SUMPRODUCT 函数算出未报销的金额,但是我增加了一个逻辑列,有没有办法不增加逻辑列,完成运算,(虽然是否报销这个列可以直接设置为 1,0 ,但是我只是举例,实际就是要先判断一个列然后在返回这个列对应的判断后的逻辑列)

    上面说那么多就是一个问题: 如何在 excel 语法上,将选中的一个列如: B1:B10 做一定的运算(加减,逻辑运算等) 转换为一个数组直接在语法上使用

    7 条回复    2016-03-30 09:03:11 +08:00
    ncdx2009
        1
    ncdx2009  
       2016-03-28 15:04:50 +08:00 via iPhone   ❤️ 1
    没完全理解问题,不过你举的那个例子可以直接 sumif 求和
    mathcoder23
        2
    mathcoder23  
    OP
       2016-03-28 17:47:58 +08:00
    A B C
    1 1 0
    2 1 1
    3 0 1
    5 1 0
    6 0 0

    B , C 列对应行与运算为 1 ,对 A 求和,
    这个怎么弄呢?
    @ncdx2009
    mathcoder23
        3
    mathcoder23  
    OP
       2016-03-28 18:05:51 +08:00
    SUMPRODUCT((A2:A6)*(B2:B6=1)*(C2:C6=1))

    @ncdx2009
    我找到了这种。
    ncdx2009
        4
    ncdx2009  
       2016-03-28 21:01:43 +08:00 via iPhone   ❤️ 1
    sumifs(A2:A6, B2:B6, 1, C2:C6, 1)
    和那个效果是一样的,不过思路不是数组相乘,而是筛选出符合条件的求和。
    zeraba
        5
    zeraba  
       2016-03-28 22:39:35 +08:00 via Android   ❤️ 1
    对金额列 sumif 是否报销 那一列为否 或者插入数据透视表 行标签为金额 列标签为是否保险 对金额求和
    KentY
        6
    KentY  
       2016-03-29 17:02:20 +08:00   ❤️ 1
    does anybody miss awk?
    mathcoder23
        7
    mathcoder23  
    OP
       2016-03-30 09:03:11 +08:00
    @KentY 不知道
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1710 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 16:46 · PVG 00:46 · LAX 08:46 · JFK 11:46
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.