Оценить текстовое выражение

Оценить текстовое выражение

У меня есть текстовое выражение, написанное с одинарной кавычкой перед '-a+b. Затем оно подставляется, как на изображении. Я хочу вычислить выражение желтым цветом (вычислить до 4) вместо того, чтобы отображать его так. Как это сделать? Я попробовал функцию Evaluate, но в моей версии (Excel 2019) эта функция отсутствует.

введите описание изображения здесь

решение1

Вы можете использовать следующее и адаптировать его по мере необходимости для выбора искомых значений. (Например, у вас может быть 10 переменных, а не только «a» и «b».) Вам также может потребоваться адаптировать операторы и знак «минус», если необходимо оценить другие выражения.

=-HLOOKUP("a",$A$77:$D$78,2,FALSE)+HLOOKUP("b",$A$77:$D$78,2,FALSE)

Выше представлена ​​простая версия, предполагающая точный набор переменных и точное выражение.

Интересное замечание для вас, поскольку вы указали, что искали решение с помощью `EVALUATE()~. ВыДЕЛАТЬиметь доступ к этой формуле. Проблема в том, что она НЕ работает "на стороне ячейки" (в открытой таблице). Она доступна только в функциональности именованного диапазона.

Идея заключается в том, чтобы создать именованный диапазон, например, «Ответ», и использовать эту формулу в поле «Ссылается на»:

=EVALUATE(-a+b)

Вам нужно будет ЛИБО заменить "a" и "b" в ней соответствующими частями формулы выше, либо определить их как именованные диапазоны. Лично я предпочитаю последний вариант, хотя некоторые отдельные буквы, например "c", недоступны (они конфликтуют с "C" в стиле адресации R1C1; как и "r"). Вы можете дать именованным диапазонам имена, например "AA" и т. д., используя SUBSTITUTE()для необработанного ввода из ячейки. Или просто те, которые Excel не позволит вам использовать напрямую.

Важным элементом здесь EVALUATE()является то, что, поскольку я делаю ставку на то, что вы нашли решение где-то в другом месте и вам просто нужно заставить его работать:

EVALUATE() ДОЛЖЕН ИСПОЛЬЗОВАТЬСЯ В ИМЕНОВАННЫХ ДИАПАЗОНАХ, ИНАЧЕ ОНО НЕ БУДЕТ РАБОТАТЬ. И КАЖДЫЙ может его использовать, а не только некоторые, пока они используют его внутри функциональности Именованного диапазона.

Все старые макросы Excel 4 доступны именно таким образом: в именованных диапазонах, но никогда, никогда — в ячейках самой электронной таблицы.

решение2

Пытаться......

Предположим, что данные размещены вA2:D3

В B6, формула скопирована :

=IMREAL(IMDIV(SUBSTITUTE(SUBSTITUTE(A6,MID(A6,2,1),HLOOKUP(MID(A6,2,1),A$2:D$3,2,0)),MID(A6,4,1),HLOOKUP(MID(A6,4,1),A$2:D$3,2,0))&"i","1+i"))*2

введите описание изображения здесь

Связанный контент