У меня есть блок данных, который представляет шаги в процессе и возможных ошибках:
ProcessStep Status FeesPaid OK FormRecvd OK RoleAssigned OK CheckedIn Not Checked In. ReadyToStart Not Ready for Start
Я хочу найти первое Состояние, которое не "в порядке".
Я делал попытку этого:
=Match("<>""OK""", StatusRange, 0)
который, как предполагается, возвращает индекс первого элемента в диапазоне, который НЕ является - РАВЕН (<>) к "OK"
Но это не работает, вместо этого возвращаясь #N/A
.
Я ожидаю, что это возвратится 4 (индекс № 4, в индексе на основе 1, представляя, что CheckedIn является первым элементом неOK),
Какие-либо идеи, как сделать это?
Существует по крайней мере один простой способ сделать это, если Вы не возражаете настраивать другой блок (возможно скрытый) ячейки где-нибудь. Например, Вы могли добавить столбец формулы следующим образом, который тестирует, равна ли ячейка с ее левой стороны от него "OK":
| | A | B | C |
|---+----------------+----------+----------|
| 1 | "ProcessStep" | "Status" | |
| 2 | "FeesPaid" | "OK" | =B2="OK" |
| 3 | "FormRecvd" | "OK" | =B3="OK" |
| 4 | "RoleAssigned" | "OK" | =B4="OK" |
| 5 | "CheckedIn" | "OK" | =B5="OK" |
| 6 | "ReadyToStart" | "OK" | =B6="OK" |
Теперь можно использовать =MATCH(FALSE,C2:C6,0)
найти строку, содержащую первое состояние неOK.
Править: Toc имеет лучшее решение.