Используйте текстовое значение в формуле Excel - PullRequest
1 голос
/ 23 марта 2020

Я прошу прощения за ввод в Engli sh. Это достижение переводчика.
Я хочу придумать эту формулу, но не могу.
Значение ячейки A1 является переменным и может быть одним из этих признаков (=, <=,> =, <,> ).
Ячейки A3 и A4 также имеют числовые значения.
Теперь формула, которую я ищу в ячейке A2.

= if (A3 & A1 & A4,1,0)

Таким образом, логический текст может быть одним из следующих:
A3 = A4, A3 A4, A3> = A4, A3 <= A4 <br>Есть ли способ по этой формуле?

Ответы [ 2 ]

2 голосов
/ 23 марта 2020

Для этого с формулой 1 необходимо выполнить все комбинации:

=IF(CHOOSE(MATCH(A1,{"=","<=",">=","<",">"},0),A3=A4, A3<=A4,A3>=A4, A3<A4,A3>A4),1,0)

enter image description here

1 голос
/ 23 марта 2020

Нам нужен дополнительный шаг. В A2 введите:

="=if(A3" & A1 & "A4 ,1,0)"

Пример:

enter image description here

К сожалению A2 это только строка, а не формула, но мы можем выполнить ее. В стандартном модуле введите следующую пользовательскую функцию:

Function eval(s As String) As Variant
    Application.Volatile
    eval = Evaluate(s)
End Function

Выберите другую ячейку, скажем B2 и введите:

=eval(A2)

enter image description here

Всякий раз, когда A1 или A3 или A4 изменяются, формула строки в A2 будет изменить и значение в B2 будет пересчитано.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...