这是我正在使用的表格(ascii艺术表现形式):
|---|---------|-----------|--
| |A |B |
|---|---------------------|--
|1 |price |override |
|---|---------|-----------|--
|2 |10 | |
|---|---------|-----------|--
|3 |20 |100 |
|---|---------|-----------|--
|4 |30 | |
|---|---------|-----------|--
|5 |40 |90 |
|---|---------|-----------|--
|6 |50 | |
|---|---------|-----------|--
|7 |150 |280 | <-- SUMS
|---|---------|-----------|--
| | | |
列A有一些价格,列B有超值价格(如果有)。 第1行到第6行有价格,第7行有总和。
第7行计算为“= SUM(A1:A7)”
我想为单元格B7编写一个公式,它将执行以下操作:
for every cell in range A1:A7
if the override field for that price is blank
add the original price to the total
else
add the override price to the total
我的问题:上面会采用什么公式?
我看过IF(无法弄清楚如何在一个范围内应用它)和SUMIF(无法弄清楚如何获得“当前细胞”和“相对细胞”),但我想不到一种方法来做到这一点。我是excel公式的新手。
答案 0 :(得分:8)
尝试数组公式怎么样?在单元格B7
中,尝试添加以下内容:
=SUM(IF(ISBLANK(B2:B7), A2:A7, B2:B7))
然后按Ctrl+Shift+Enter
输入数组公式。这将检查B列中是否有值并在总和中使用它;否则,它将使用A列中的值。
答案 1 :(得分:0)
似乎最简单的方法是创建第三列,您可以使用=IF(ISBLANK(B1); A1; B1)
公式按价格或覆盖填充哪些单元格。然后将鼠标拖动到所有单元格上(相应地更新它)。然后你只需在第三列中加总值。
对不起,不是excel艺术家
答案 2 :(得分:0)
我会有一个新的row.row C来收取总和所需的价格。
C行就像这样
if(B1 = "",A1,B1)
你将有C行
C
10
100
30
90
50
然后总结这一行C.你会得到你想要的东西。