Расширенное вычитание между столбцами в одной строке в области

241
dnepro

Я хочу рассчитать стоимость транзакции, поэтому я имею в виду, что у меня есть разные счета в столбце «А», и для каждой транзакции у меня есть столбец типа «B».

Транзакции показывают новое значение после транзакции для двух учетных записей.

И мне нужна универсальная функция для расчета «стоимости транзакции», что-то вроде Ai - Bi… Ai + 1 - Bi + 1…

или как функция (псевдокод), что-то вроде этого:

int res = 0; foreach (int i = 1; i < 4 (rows); i++) { if (Bi != null && Ai > Bi) { res = Ai - Bi } }

Пример:

 A B (transactions) ------------------------------------------------------------ 1 | $ 100 | | ------------------------------------------------------------ 2 | | |  ------------------------------------------------------------ 3 | $ 200 | $ 150 (now, after transaction) |  ------------------------------------------------------------ 4 | $ 300 | $ 350 (now, after transaction) |  ------------------------------------------------------------ 5 | sum(A1:A4) | (A1-B1)+(A2-B2)+(A3-B3)… (transaction value)| ------------------------------------------------------------ => | $ 600 | $ 50 | ------------------------------------------------------------ 

Поэтому я перевел 50 долларов со счета А3 на А4.

Мне в основном нужна логика

Любая помощь очень ценится :)

0
Итак, `= СУММА (А1: А4) -СУММА (B1: B4)` ??? Scott Craner 7 лет назад 0
нет; как в моем примере выше, если бы я сделал, что B6 будет 600- (150 + 350) => 100, а не 50! dnepro 7 лет назад 0

1 ответ на вопрос

1
Scott Craner

Две формулы:

SUMPRODUCT:

=SUMPRODUCT((B1:B4<A1:A4)*(B1:B4<>"")*(A1:A4-B1:B4)) 

Или эта формула массива:

=SUM(IF((B1:B4<A1:A4)*(B1:B4<>""),(A1:A4-B1:B4))) 

Будучи формулой массива, она должна быть подтверждена Ctrl-Shift-Enter вместо Enter при выходе из режима редактирования. Если все сделано правильно, тогда Excel обведет {}формулу.

Если ячейки заполнены формулами, которые возвращают a, ""то используйте в качестве пустой строки секунду, что приведет к ошибке с формулой SUMPRODUCT. Если они действительно пусты, то любой из них будет работать.

enter image description here

Супер спасибо, это работает, но дополнительный вопрос и, может быть, вы можете сказать мне, как это работает в числах яблок, или я должен сам разобраться :), но в любом случае большое спасибо! dnepro 7 лет назад 0
@dnepro Извините, у меня нет цифр, так как я очень сильно не люблю яблоко. Scott Craner 7 лет назад 0

Похожие вопросы