Поиск возможностей объединения экипажей

Группа BLUE может быть в паре с другим членом группы BLUE или с участником RED.

НО группа RED может быть соединена только с членом группы BLUE

Ник и Стив

Ник и Алекс

Ник и Пэт

Пэт и Стив

Пэт и Алекс

Это 5 пар экипажей (Ник/Пэт — это то же самое, что Пэт/Ник, поэтому их следует учитывать только один раз). Как мне написать формулу, чтобы позволить мне продолжать строить, продолжая добавлять участников в обе группы? Я попробовал =Blue((blue-1)red), который не дает точной суммы.

2 ответа

Это звучит более подходящим для решения SQL, поэтому я бы описал вашу синюю и красную таблицы для POWERQUERY в Excel, а затем построил такой запрос:

      Select b1.name as PairFirstPart, b2.name as PairSecondPart
From TableBlue b1 Inner Join TableBlue b2 ON
     b1.name<b2.name
UNION ALL
Select b.name, r.name
From TableBlue b Inner Join TableRed r

Теперь вы можете добавить элементы в обе таблицы, а затем повторно запустить запрос для получения обновленных результатов.

Мне было интересно, сможете ли вы реализовать ответ @Chris Maurer непосредственно в Excel.

Да, вы можете в основном следовать инструкциям здесь (Данные | Получить данные | Из других источников | Запрос Microsoft) и отредактировать SQL, но я мог заставить его работать, только поместив синюю таблицу на один лист, который я назвал Синяя и красная таблица. на другом листе, который я назвал Красным:

и

Тогда SQL выглядел так:

      SELECT t1.Person , t2.Person 
FROM `C:\Users\myID\OneDrive\Documents\Excel\Source.xlsx`.`Blue$` t1,
 `C:\Users\myID\OneDrive\Documents\Excel\Source.xlsx`.`Red$` t2
union all
SELECT t1.Person, t2.Person
FROM `C:\Users\myID\OneDrive\Documents\Excel\Source.xlsx`.`Blue$` t1
inner join
 `C:\Users\myID\OneDrive\Documents\Excel\Source.xlsx`.`Blue$` t2
on t1.person<t2.person

В результате чего

Смотрите также

Другие вопросы по тегам