Можно ли иметь сумму текстовых ячеек REPLACE в openoffice.org calc?
У меня есть таблица в Calc, где я вставляю значения в долларах ("$2,50") из другого источника, но иногда они находятся в CAD и отображаются как "C $3,75", поэтому я хотел бы иметь возможность сохранить эти строки, как они есть, и до сих пор быть в состоянии добавить их. Что-то вроде:
=SUM(VALUE(REPLACE(A20:A32;1;3;'')))
или же:
=SUM(VALUE(RIGHT(A20:A32;LEN(A20:A32)-2)))
ни чего явно не работает (REPLACE
не берет диапазон). Я долго искал и, похоже, не могу найти способ сделать это. Моей первой мыслью было использовать SUMPRODUCT
как-то, но я даже не знаю, как подойти к этому. Я нашел кое-что о массивах, но это в настоящее время выходит за рамки моего понимания.
1 ответ
Отлично, как это обычно бывает, через несколько минут после того, как вы публично спросите, вы сами найдете ответ. В моем случае проблема заключалась в том, что после ввода:
=SUM(VALUE(RIGHT(A20:A24;LEN(A20:A24)-2)))
Вы должны нажать "Ctrl+Shift+Enter" вместо просто "Enter", когда вы хотите принять формулу. (Это не будет работать в уже введенной формуле, если вы сначала не измените ее, например: добавьте пробел, затем удалите пробел, затем нажмите "Ctrl+Shift+Enter", чтобы принять изменения). Это приводит к тому, что формула оценивается как массив, который можно увидеть в предварительном просмотре формулы ячейки, где openoffice показывает ее как:
{=SUM(VALUE(RIGHT(A20:A24;LEN(A20:A24)-2)))}
Хотя, когда вы редактируете его, он удаляет {}. Вот и все, просто нажмите "Ctrl+Shift+Enter" вместо "Enter", и это сделает OpenOffice счастливым. Надеюсь, это поможет кому-то там.
ПРИМЕЧАНИЕ: кажется, это работает только с RIGHT()
и не REPLACE()
по какой-то причине, если вы знаете, почему (или как заставить это работать), пожалуйста, дайте мне знать.
Это работает, хотя:
=SUMPRODUCT(VALUE(REPLACE(A17:A18;1;3;'')))
Нет "Ctrl+Shift+Enter" не требуется.