Листы - поиск по 3 критериям, включая переменные - PullRequest
1 голос
/ 30 апреля 2020

Борьба с arrayFormula и vlookup с соответствием ссылочным данным на другой вкладке листа для получения процента на основе членства в строках и столбцах.

В настоящее время у меня есть: =ArrayFormula(vlookup(Orange&7,{A1:A&B1:B,C1:E},match("Skill 3",A1:E1,0)-1,0))

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

МИССИЯ : Используя введенный класс героев "color" и "Skill Level", вы получите "процент" от соответствующая колонка навыков. Это понадобится 3 раза, чтобы удовлетворить 3 различных типа навыков.

Вот лист: Лист теста

Ответы [ 2 ]

1 голос
/ 30 апреля 2020

Вот решение:

=IFERROR(
  INDEX(
    QUERY(
      'Hero Lead'!$A$2:$E,
      "select C, D, E
       where A = '" & $C$36 & "' and
             B = " & G36,
      -1
    ),
    0,
    MATCH(
      "Skill " & F36,
      'Hero Lead'!$C$1:$E$1,
      0
    )
  ),
  0
)

Это дает вам правильное повышение навыка от строки, отфильтрованной с использованием QUERY по уровню и цвету.


Если вам нужно все три сразу для фиксированного цвета и фиксированного уровня (например, в столбце TRANSPOSE):

=TRANSPOSE(
  FILTER(
    'Hero Lead'!$C$2:$E,
    'Hero Lead'!$A$2:$A = $C$36,
    'Hero Lead'!$B$2:$B = G36
  )
)

или:

=TRANSPOSE(
  QUERY(
    'Hero Lead'!$A$2:$E,
    "select C, D, E
     where A = '" & $C$36 & "' and
           B = " & G36,
    -1
  )
)
1 голос
/ 30 апреля 2020

Подход

Для создания VLOOKUP с использованием более чем одного критерия потребуется вспомогательный столбец, созданный путем объединения двух (или более) критериев. В вашем случае вы должны построить столбец, который объединяет цвет и уровень. Ваш поиск будет искать это значение и возвращать соответствующий процент в 4-м столбце. Если ваша таблица в Hero Lead выглядит следующим образом:

+==========================================+
|  A   |  B  |  C  |   D   |   E   |   F   |
+------+-----+-----+-------+-------+-------+
|Lookup|Class|Level|Skill 3|Skill 4|Skill 7|
+------------------------------------------+

Вы можете использовать эту формулу для получения правильного значения Skill 3

=VLOOKUP("Orange"&7,'Hero Lead'!A:D,4,0)

Просто скопируйте формулу с другим параметром в получить правильный процентный уровень.

...