Как использовать функцию IF в формуле Excel с условиями, состоящими как из отрицательных, так и из положительных чисел - PullRequest
0 голосов
/ 25 июня 2019

У меня есть лист Excel со значениями как в отрицательном, так и в положительном знаке.Основываясь на значениях, я хочу, чтобы они присвоили категорию.Таблица Excel выглядит следующим образом:

Я должен применить формулу к значениям SPI.

enter image description here

Я использую оператор IF.

Я использую формулу:

=IF(C3>=2,"EW",IF(1.5<=C3<=1.99,"VW",IF(1<=C3<=1.49,"MW",IF(-0.99<=C3<=0.99,"NN",IF(-1.49<=C3<=-1,"MD",IF(-1.99<=C3<=-1.5,"SD","ED"))))))

Проблема в том, что каждый раз, когда он показывает только "ED".Как будто он пропускает все условия и работает только в последнем случае.Как я могу это исправить?

Ответы [ 3 ]

1 голос
/ 25 июня 2019

Попробуйте, но проверьте значения:

IF(C3>=2,"EW",IF(C3>=1.5,"VW",IF(C3>=1,"MW",IF(C3>=-0.99,"NN",IF(C3>=-1.49,"MD",IF(C3>=-1.99,"SD","ED"))))))

enter image description here

Вы также можете рассмотреть vlookup () следующим образом:

enter image description here

Что будет легче поддерживать ...

0 голосов
/ 25 июня 2019

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

=IF(C3>=2,"EW",IF(1.5<=C3<=1.99,"VW", ...)

Так как Excel не распознает 1.5<=C3<=1.99, он считает оператор FALSE и проверяет, что делать в этом случае, что в конце вашего IF оператора равно "ED".

В вашем случае вы должны использовать AND():

=IF(C3>=2,"EW",IF(AND(C3>=1.5,C3<=1.99),"VW", ...)

Я не тестировал решение Solar Mike, но его ответы, как правило, довольно хорошие. (Хотя часть с IF(C3>=--1.49,..., вероятно, должна быть переписана на IF(C3>=-1.49,...):)

0 голосов
/ 25 июня 2019

Вы можете лучше понять, что происходит, используя beautifier (, например, это ), поэтому ваша формула:

=IF(
    C3 >= 2,
    "EW",
    IF(
        1.5 <= C3 <= 1.99,
        "VW",
        IF(
            1 <= C3 <= 1.49,
            "MW",
            IF(
- 0.99 <= C3 <= 0.99,
                "NN",
                IF(
- 1.49 <= C3 <=- 1,
                    "MD",
                    IF(
- 1.99 <= C3 <=- 1.5,
                        "SD",
                        "ED"
                    )
                )
            )
        )
    )
)

Из вашего примера не ясно, какие столбцы и строки являются,Не могли бы вы предоставить также файл Excel?

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