2

У меня есть лист Excel, который мне нужно запустить на Android. Единственная проблема, я использовал VBA для функции оценки, а VBA не работает в приложениях Android. Я искал альтернативу и обошел функцию «VALUE ()», я увидел, что ячейка с:

=VALUE(10 + 5 * 3)

Вернул бы правильный результат (25). Теперь я хотел бы сделать следующее:

=VALUE(A2)

Где A2 - текст, содержащий «10 + 5 * 3». Но это возвращает "# ЗНАЧЕНИЕ!"

Есть ли хитрость, как я мог бы использовать VALUE() для оценки простых формул?

Спасибо!

2 ответа2

2

Существует хак, который существует уже много лет, и делает это в полной версии Excel. Я сомневаюсь, что это будет работать на Android, но, возможно, стоит попробовать.

Я использую Excel 2013.

Перейдите на панель ленты FORMULAS и выберите «Определить имя».

Дайте любое имя, например myResult

В части «Относится к:» поместите формулу =EVALUATE(A2)

Теперь поместите формулу =myResult на свой лист, где вы хотите, чтобы ответ появился.

1

Используйте INDIRECT().

Пример (из функции Microsoft Office INDIRECT):

Data
B2     1.333
B3     45
George 10
5      62
Formula            Description                                                  Result
'=INDIRECT(A2)     Value of the reference in cell A2. The reference is to       1.333
                   cell B2, which contains the value 1.333.                                   
'=INDIRECT(A3)     Value of the reference in cell A3. The reference is to          45
                   cell B3, which contains the value 45.
'=INDIRECT(A4)     Because cell B4 has the defined name "George," the reference to 10
                   that defined name is to cell B4, which contains the value 10
'=INDIRECT("B"&A5) Combines "B" with the value in A5, which is 5. This, in turn,   62
                   refers to cell B5, which contains the value 62.

Применяется к: Excel 2016, Excel 2010, Excel Starter, Excel 2013, Excel Online, Excel 2016 для Mac, Excel для Mac 2011, Excel 2007

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .