Индекс Excel: ошибка ссылки при использовании функции индекса

. Сложнее всего использовать экранированный дефис, чтобы он не зависел от положения. Это \- внутри класса символов в квадратных скобках.

Но есть еще кое-что. Некоторые из перечисленных перечислений должны быть написаны по-разному. В некоторых случаях они определенно должны.

Это сравнение ароматов регулярных выражений говорит о том, что C♯ может использовать некоторые из простых свойств Unicode. Если вы имеете дело с Unicode, вы, вероятно, должны использовать общую категорию \p{L} для всех возможных букв, а , возможно, \p{Nd} для десятичных чисел. Кроме того, если вы хотите разместить всю эту пунктирную пунктирность, а не только HYPHEN-MINUS, вы должны использовать свойство \p{Pd}. Вы также можете написать эту последовательность символов пробелов просто как \s, считая, что это не слишком общее для вас.

Все вместе, это работает с апатерном [\p{L}\p{Nd}\p{Pd}!$*], чтобы соответствовать любому символу из что [. g5]

Я бы все равно использовал это, даже если бы я не планировал иметь дело с полным набором Unicode, потому что это хорошая привычка, и потому, что эти вещи часто растут за пределами их исходные параметры. Теперь, когда вы поднимаете его для использования в другом коде, он все равно будет работать правильно. Если вы жестко закодируете все символы, это не будет.

0
задан Scott Craner 18 March 2019 в 18:26
поделиться

2 ответа

INDEX хочет относительное положение, а не значение. Вам необходимо добавить МАТЧ:

=INDEX($B$1:$G$1,MATCH(H2,B2:G2,0))

Матч вернет относительную позицию совпадения.

0
ответ дан Scott Craner 18 March 2019 в 18:26
поделиться

Индекс использует H3 для определения возвращаемого столбца. Вот почему Row1 работает. Он находит столбец 6 (между B1: G1) и возвращает результат. Это только случайность, что это правильный ответ. Если бы вы подставили 5 в ячейку H2, он бы также возвратил столбец 5. В других показанных примерах функция max возвращает индекс столбца, который находится за пределами того, что находится в массиве (B1: G1 имеет длину 6 столбцов).

Чтобы исправить, соедините Index с функцией Match. Функция Match выполнит поиск в массиве (B2: G2; B3: G3 и т. Д.) И вернет номер столбца соответствующего столбца, а затем передаст его в функцию Index, чтобы получить правильный результат.

Ваша окончательная формула будет выглядеть следующим образом: = INDEX ($ B $ 1: $ G $ 1, MATCH (H2, B2: G2, 0))

0
ответ дан J. Spain 18 March 2019 в 18:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: