значение поиска в Excel на другом листе и возвращаемое значение другого столбца с этого листа

У меня есть рабочая тетрадь, в которой есть основной лист под названием «Игроки», в котором есть номер билета, номер таблицы, имя (а затем другая информация).

Пример:

Players

Еще у меня есть листы с назначениями таблиц.

Пример:

Таблицы

Я бы хотел, чтобы на листе под названием таблица 1 просматривался лист, называемый игроками для таблицы 1, а затем возвращалось имя человека рядом с ним.


person Michelle    schedule 07.03.2017    source источник
comment
Возможный дубликат Использование INDEX (MATCH ()) для возврата n-е значение ячейки В качестве альтернативы вы также можете взглянуть на следующее (более подробное) объяснение: exceljet.net/formula/get-nth-match-with-index-match   -  person Ralph    schedule 07.03.2017


Ответы (2)


Попробуйте это в "Таблице 1"! B2,

=iferror(index(players!c:c, aggregate(15, 6, row(players!b$1:index(players!b:b, match(1e99, players!b:b)))/(players!b$1:index(players!b:b, match(1e99, players!b:b))=1), row(1:1))), text(,))

Заполняйте, пока не получите бланки.

person Community    schedule 07.03.2017
comment
Это сработало отлично. Другой вопрос, есть ли способ получить место #, соответствующее номеру билета из таблицы игроков? - person Michelle; 07.03.2017
comment
Да, способ есть. Измените приведенное выше, чтобы получить другой столбец, сопоставив имя игрока и номер стола (я предполагаю, что игроки могут находиться за более чем одним столом). Если у вас возникнут проблемы, задайте новый вопрос и покажите свои первоначальные усилия * (работают или нет), чтобы получить лучший ответ на свой вопрос. Публикация требований без демонстрации первоначальных усилий по поиску решения, если это категорически не одобряется. - person ; 07.03.2017

Я бы не предлагал такой подход, но поскольку вы его уже установили:

  1. Добавьте один вспомогательный столбец в каждую таблицу, чтобы найти номер ROW на листе Players (можно без него, но не рекомендуется. Вы можете скрыть его, если хотите).

  2. Введите эту формулу в ячейку A2 новой ячейки:

    = ЕСЛИОШИБКА (SMALL (IF (Players! $ B $ 1: $ B $ 100 = 1 * TRIM (RIGHT (REPLACE (CELL ("filename", A1), 1, FIND ("]", CELL ("filename", A1) ), ""), 2)), СТРОКА ($ B $ 1: $ B $ 100)), СТРОКА (A $ 2: A2)), "")

(Подтверждено с помощью ctrl + shift + enter, а не просто Enter)

  1. Теперь установите значение ИНДЕКС на основе этой строки из листов игроков:

    = ЕСЛИ ($ A2 = "", "", ИНДЕКС (Игроки! C: C, $ A2))

Распространите формулу на другие ячейки и измените столбцы по своему усмотрению.

person OES    schedule 07.03.2017
comment
Что бы вы посоветовали кроме этого? - person Michelle; 07.03.2017