Я не могу найти один хороший способ решить эту проблему. Я постараюсь подвести итоги как можно лучше:
Я использую надстройку Hyperion Essbase Excel для навигации внутри кубов OLAP. Здесь я пытаюсь сопоставить определенные метки со значениями измерения. Внутри этого измерения находятся несколько уровней группировки данных, поэтому один дочерний узел может иметь несколько уровней родителей. Я заранее знаю, какими будут участники, но они могут меняться каждый месяц, и поиск пропавших членов может быть утомительным, поэтому мы используем родительские элементы и увеличиваем их членов. Однако внутри одного родителя может быть несколько разных меток. Я достиг части этого с помощью VLOOKUP(), и если текущая строка не найдена в моей таблице, тогда я смотрю на одну строку вниз и перетаскиваю эту формулу, это имеет следующий нежелательный эффект:
Я пронумеровал, что происходит вместе. Как вы можете видеть в моем примере, элемент "24566" также находится в родительском "FD120465". В результате все элементы, найденные перед ним в той же группе, сопоставляются с "Расходом B", но целевой результат заключается в том, что все дочерние элементы должны быть сопоставлены с "Расходом D", но "24566". Вот формула, которую я использовал в этом примере:
=IFERROR(VLOOKUP(C11,$C$3:$D$8,2,0), D12)
Есть несколько способов справиться с этим, которые я придумала, но ни один из них мне не нравится. Я мог бы сделать две разные формулы, одну, которая смотрит только на дочерние элементы, а другую, которая смотрит только на родительские элементы. Если дочерние элементы помещаются первыми, не имеет значения, что в группе будет размещена неправильная метка ("24566" будет помечена как "Расход D" в оранжевой части). Это также имеет тот недостаток, что требует больше работы (определяя регионы, где использовать формулу 1 и формулу 2, и либо выполняйте работу вручную, либо перебивайте ее с помощью VBA ...)
Другой способ - просто вынуть каждый дочерний элемент и поместить его в таблицу с соответствующим отображением. Проблема состоит в том, что родители должны иметь больше или меньше элементов каждый месяц, и отображение может измениться (хотя это не должно происходить так часто), поэтому управление каждым дочерним элементом станет утомительным. Образец, который я предоставил, очень мал по сравнению с тем, что у меня есть (15-20 детей на одного родителя).
Это своего рода последний шанс, который я даю в этой задаче, прежде чем мы согласимся на решение, которое имеет наименьшие недостатки. Есть ли очевидный (или даже не очень очевидный) способ решить эту проблему чисто ?
Спасибо !