У меня есть куча данных, детализирующих композиции материалов. Некоторые из этих материалов также представляют собой смеси других материалов. Данные, которые я имею, сведены в таблицу как ниже. (тип ингредиента просто для удобства чтения человеком, он выражает, существует ли значение в столбце B в столбце A)
Я хотел расширить это до нижнего уровня, то есть вернуть таблицу, которая показывает состав в терминах только "вещей", а не миксов; где что-то является смесью, оно должно расширяться до составляющих его "вещей"
В Excel это потребует некоторой медленной работы и запутанного VBA. Из того, что я понимаю, это должно быть относительно тривиально в доступе, если данные были представлены таким образом, что доступ "понимает" их. Но я понятия не имею, как.
Product Ingredient Ingredient Type
APPLE_PIE APPLE_FILLING mix
APPLE_PIE PASTRY mix
APPLE_FILLING APPLES thing
APPLE_FILLING SUGAR thing
APPLE_FILLING MIXED_SPICE mix
MIXED_SPICE CINAMON thing
MIXED_SPICE NUTMEG thing
PASTRY FLOUR thing
PASTRY SALT thing
PASTRY WATER thing
PASTRY BUTTER thing
EGG_NOG EGGS thing
EGG_NOG MILK thing
EGG_NOG MIXED_SPICE mix
EGG_NOG RUM mix
RUM SUGAR thing
RUM TIME thing
RUM RAINBOWS thing
Элегантное решение будет работать независимо от того, насколько глубока "смесь", и не требует ручного рефакторинга данных. Но то, что расширяет уровень таблицы 1 и может быть запущено рекурсивно, все равно сделает эту работу.