Страницы: 1
RSS
Заполнение сводной таблицы данными в зависимости от выбранного периода
 
Уважаемые форумчане. Прошу совета/помощи/наведения на мысль в части заполнения таблицы. Файл прикреплён. Собственно: есть сводный файл и два листа (план, факт), разбитые по периодам. В зависимости от выбранного периода (ячейка В1 сводной таблицы), необходимо "вытащить" данные в сводный файл. Проблема состоит в том, что кроме одиночных периодов (месяц, квартал), необходимо "вытаскивать" сумму данных заданного периода (например, 2 месяца (янв-фев) , 4 месяца (янв-фев-мар_апр), проч. Заранее благодарю за помощь.
 
Доброго времени суток!
Бейте меня убивайте, но я таких случаях за нормализованные таблицы, очень странно, что ими пренебрегают. Как вариант предлагаю Вам отчёт на основании сводной таблицы (по моему мнению, это идеальный вариант), Лист 4, Данные заполняются на листе data
Изменено: netud - 04.12.2013 23:26:06
 
Вся проблема в том, что в моем примере одна строка поступлений, в фактическом же файле этих строк около 500 с делением на поступления/выплаты по операционной/инвестиционной/финансовой деятельности.... И, к сожалению, формат сводного файла установленного образца- менять нельзя.....Но, всё равно, спасибо за совет....
 
netud, все нормально: в названии сводная таблица.
А теперь формула (1 шт):

(файл удалил - мелкие ошибки, сообщение #9)
Изменено: Nic70y - 05.12.2013 22:40:31
 
Это же сводная таблица, поля в ней можно переносить (расставлять) так как Вам нужно.
Но соглашусь, полностью повторить ваш формат сводная не может.
 
Nic70 y, да, я тоже раньше такую траву курил    :)  , формулы на пол листа были. А теперь к простоте душа тянется. Для заморочек мне SQL и SAP хватает
 
Спасибо, Nic70y, формула корректно работает в части "вытаскивания" одиночных месяцев и кварталов....но вот беда,  что-то не получается с промежуточными периодами (2 месяца, 4 месяца и проч...)  :cry:  
 
Татьяна_Ко, конкретнее, при каких обстоятельствах какой должен быть результат?
Покажите в файле.
Возможно я просто неправильно Вас понял.
 
 на примере периода "4 месяца", я "кустарным" способом показала, какие данные должны получиться.  Данные, которые получаются с помощью Вашей формулы, не такие  :)  .  Т.е. Ваша формула филигранно справилась с "вытягиванием" одиночных данных, но вот с суммой периодов - не получается.....
Изменено: Татьяна_Ко - 06.12.2013 12:34:36
 
Недоработки (естественный процесс  :(   )
изучайте, мож где еще есть:

(зачем ссылка на мой профиль?)
Изменено: Nic70y - 05.12.2013 22:42:24
 
Спасибо, я Вас обожаю!!!!!!!!! Спасибо, спасибо.... Вы просто не предсталяете, на сколько я Вам благодарна...... (и как некоторые умудряются так филигранно владеть экселем?) А за ссылку на профиль- извините, это вышло случайно..... :oops:
 
Татьяна_Ко, пожалуйста за всегда.
Из-за Вас и моей неграмотности пришлось "гуглить" слово "филигранно"
(Спасибо Вам за это - на 1 слово стал грамотней) :)
 
Nic70y, а ВАм не сложно будет пояснить смысл формулы, логику работы её "мозгов"? Честно пыталась пол-дня разобраться сама, чтобы Вас не напрягать пояснялками.... но как-то безрезультатно........От этого стало грустно.... :oops:
 
Не сложно... только я плохой объясняльщик.
Мне проще просто сделать, чем объяснить.
См. файл (там мои попытки разъяснения)
 
Nic70y, хочу еще и еще раз поблагодарить за формулу и за терпение в попытках объяснить экселевской "блондинке" прописные истины))). Смысл формулы на 90% стал понятен, но есть один момент, который никак не хочет складываться в пазл.....например, я выбираю период 2 месяца, формула в части : БП!H10*(ЕСЛИ($B$1="1 полугодие";6;--ЛЕВБ($B$1;2))>1)......согласно объяснений в п.1, преобразует в число 2 , и сравнивая с 1, оставляет для дальнейших расчетов......т.е если блок (ЕСЛИ($B$1="1 полугодие";6;--ЛЕВБ($B$1;2))>1) =2, я предполагаю, что можно записать как БП!H10*2, но почему в таком случае, формула не умножает данные из ячейки БП!H10 на 2, а просто "вытягивает" их для дальнейшего суммирования??? Попыталась на пальцах пояснить непонятное место,надеюсь, Вы поняли, что я имею в виду......
 
БП!H10*2, умножит февраль на 2, а Вам, как я понял нужна сумма месяцев.
В любом случае нужно условие для суммирования (умножения)
ЕСЛИ самая простая и самая правильная формула для данной опции
Цитата
надеюсь, Вы поняли
Нет.
 
хорошо, тогда поэтапно (простите за назойливость, уж оооочень хочется разобраться  :)  ):
БП!E10 (т.е.январь) +БП!H10*(ЕСЛИ($B$1="1 полугодие";6;--ЛЕВБ($B$1;2))>1) (т.е февраль)+БП!K10*(ЕСЛИ($B$1="1 полугодие";6;--ЛЕВБ($B$1;2))>2) (т.е. март). В случае, если в выпадающем списке я выбираю "2 месяца", январь суммируется по-любому, для марта- не "проходит фейс-контроль по ограничению), для февраля: БП!H10*(ЕСЛИ($B$1="1 полугодие";6;--ЛЕВБ($B$1;2))>1) выделенная часть формулы разве не "превращается" в число 2?
 
(ЕСЛИ($B$1="1 полугодие";6;--ЛЕВБ($B$1;2))>1) эта часть формулы при выполнении условия превратиться в 1, если условие не выполнено в 0.
БП!H10*(ЕСЛИ($B$1="1 полугодие";6;--ЛЕВБ($B$1;2))>1) а затем умножиться на сумму месяца.
Например для февраля, если в списке будет: февраль, март и т.д. это будет больше 1 соот. результат формулы для февраля будет сумма за февраль умноженная на 1 = февралю, далее + следующее условие....
Например в списке ноябрь, он не больше 11, следовательно: декабрь БП!AU10*(ЕСЛИ($B$1="1 полугодие";6;--ЛЕВБ($B$1;2))>11) будет сумма декабря умноженная на 0, т.е. равна 0, прибавляя 0 за декабрь = что он не прибавляется.
 
ЭВРИКА!!!!! Я поняла!!!!!  :D  Многократное спасибо Вам, Nic70y.....
 
Потестируйте, только "1-полугодие" замените на "6 месяцев", если не принципиально. Да, и в своём екселе возможно придётся "ММММ" заменить на русские "ММММ".
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
Страницы: 1
Читают тему
Наверх