Новости:

Из правил форума: Тема должна отражать суть вопроса, топики типа "help please" будут удаляться!

Главное меню

Копирование диапазона ссылкой

Автор kiselev, 21.06.2011, 10:54

« назад - далее »

kiselev

ЦитироватьТогда чего там анализировать?!
Не надо ничего анализировать ТАМ! Надо анализировать в другом месте, где все диапазоны объединены в один!

ЦитироватьБудет пример - будет решение.
Пожалуйста, пример прилагаю. Объедините на листе "кв1" диапазоны Дебета и Кредита из каждого месяца квартала, используя имена диапазонов. Диапазоны уже созданы и именованы.

Михаил С.

А может просто консолидацией воспользоваться?
Отдельное спасибо можно на QiWi-кошелек 909-771-53-87 или ЯД 41001136675053

kiselev

Цитата: Михаил С. от 22.06.2011, 15:49
А может просто консолидацией воспользоваться?

Я тоже сначала на нее понадеялся. Но эта функция суммирует, умножает, подсчитывает количество и т.д. - все что угодно, только не формирует составной список. С помощью консолидации мы можем сложить, умножить и т.д. диапазоны, но не расположить один за другим, к сожалению.

Михаил С.

Вы хотите обязательно формулой? Имхо, здесь легко бы справился макрос.
Формулами можно, но уж больно большая формула будет....
Отдельное спасибо можно на QiWi-кошелек 909-771-53-87 или ЯД 41001136675053

kiselev

Цитата: Михаил С. от 22.06.2011, 16:27
Вы хотите обязательно формулой? Имхо, здесь легко бы справился макрос.
Формулами можно, но уж больно большая формула будет....

Понимаете, операция эта по сути однократная, хоть и может повториться при необходимости. Но вообще исходные диапазоны - уже состоявшиеся факты, поэтому их изменение не подразумевается. Исходя из того, что использование макроса - автоматизация, подразумевающая нередкое повторение операции копирования диапазонов, существует намерение обойтись более простыми, формульными средствами. Как это говорится, не хотелось бы стрелять по воробьям из пушки.

Михаил С.

Формулу в данном случае писать дольше, чем макрос (правда, смотря кому, для меня - наоборот).
Для других диапазонов по аналогии.
Отдельное спасибо можно на QiWi-кошелек 909-771-53-87 или ЯД 41001136675053

Serge 007

Цитата: Михаил С. от 22.06.2011, 16:27
Формулами можно, но уж больно большая формула будет....
Да не такая уж и большая :)

Для дат: =НАИМЕНЬШИЙ(Янв:Мар!$A$2:$A$10;СТРОКА(A1))
Для дебет-кредит: =ИНДЕКС(ДВССЫЛ(ВЫБОР(МЕСЯЦ(A2);"янв";"фев";"мар")&"!$B$2:$B$10");СУММ(ЕСЛИ(МЕСЯЦ($A$2:A2)=МЕСЯЦ(A2);1)))

Вместо ВЫБОР(МЕСЯЦ(A2);"янв";"фев";"мар") должно было быть ТЕКСТ(МЕСЯЦ(A2);"МММ"), но почему-то так не работает.

kiselev, вот чего сразу-то файл не выложили?
Вчера в 11:51:24 вы уже получили бы ответ...
Бесплатная помощь: www.excelworld.ru
Платная помощь: sergeyizotov@excelworld.ru
Ю-money: 41001419691823 | WMR:126292472390

kiselev

Цитата: Михаил С. от 22.06.2011, 16:47
Формулу в данном случае писать дольше, чем макрос (правда, смотря кому, для меня - наоборот).
Для других диапазонов по аналогии.

Впечатляет :) Но конечно это неприемлемо для работы с 12 месяцами. Да и все равно приходится растягивать формулу вниз, чего изначально требовалось избежать. Тем не менее, благодарю Вас и интересно было бы посмотреть на вариант с более быстрым макросом.

kiselev

Serge 007,

Это тоже мощное и интересное решение, спасибо! Но в нем не используются имена диапазонов, к великому несчастью. А это требовалось в задаче  :)

Тем не менее, я изучу Вашу логику и алгоритм.

Serge 007

Цитата: kiselev от 22.06.2011, 17:12
...в нем не используются имена диапазонов... А это требовалось в задаче  :)
Так Вам решение нужно или просто спортивный интерес?
Бесплатная помощь: www.excelworld.ru
Платная помощь: sergeyizotov@excelworld.ru
Ю-money: 41001419691823 | WMR:126292472390

kiselev

Цитата: Serge 007 от 22.06.2011, 18:00
Цитата: kiselev от 22.06.2011, 17:12
...в нем не используются имена диапазонов... А это требовалось в задаче  :)
Так Вам решение нужно или просто спортивный интерес?

Мне нужно решение с использованием имен диапазонов. Рабочий вопрос, превратившийся в принципиальный.

Serge 007

Цитата: kiselev от 23.06.2011, 09:18
Мне нужно решение с использованием имен диапазонов. Рабочий вопрос, превратившийся в принципиальный.
Я предложил рабочее решение, при котором можно обойтись вообще без имён. Михаил предложил рабочее решение с использованием имен диапазонов. Итого у Вас ДВА решения проблемы. Решения в том виде, в котором Вы хотите либо нет, либо оно настолько сложно, что никто не хочет этим заморачиваться.

И кстати. А зачем у Вас вообще эти имена? Они статичны и нефункциональны. Каков смысл их присутствия в файле? Увеличивать вес книги?
И почему Вы не ведёте нормальную БД, а разбиваете инфу на листы? Во вложении пример правильной организации данных.

ЗЫ Поправил свою формулу.
=ИНДЕКС(ДВССЫЛ(ТЕКСТ(A2;"МММ")&"!$B$2:$B$10");СУММ(ЕСЛИ(МЕСЯЦ($A$2:A2)=МЕСЯЦ(A2);1)))
Теперь не надо прописывать месяца.
Спасибо Михаилу и Игорю (kim).
Бесплатная помощь: www.excelworld.ru
Платная помощь: sergeyizotov@excelworld.ru
Ю-money: 41001419691823 | WMR:126292472390

kiselev

Я за рабочие решения поблагодарил и не отрицаю их ценности. Отсутствие решения точно в требуемом виде - тоже результат, за что также благодарю всех.

Какие имена вы имеете в виду? Если имена диапазонов, то их статичность никакой проблемы не представляет. Насчет фунциональности, ни согласиться, ни опровергнуть не могу. До возникновения известной задачи меня в них все устраивало.

По поводу ведения нормальной БД, разбивка на листы - имеющийся факт, на основании которого и возникла известная задача. Для создания единого списка из диапазонов, созданных для других, более простых задач, я и обратился за помощью.

Пример правильной организации данных заключается в использовании сводной таблицы на основе данных за 3 месяца? Не возражаю. Но зачем тогда вводить листы 01-03, если данные за каждый месяц можно получить в одной сводной таблице?

Serge 007

Цитата: kiselev от 23.06.2011, 12:35
Какие имена вы имеете в виду? Если имена диапазонов, то их статичность никакой проблемы не представляет. Насчет фунциональности, ни согласиться, ни опровергнуть не могу. До возникновения известной задачи меня в них все устраивало.
Так для чего они? У каждого действия должен быть смысл. Какой был смысл в присвоении этих имён?

Цитата: kiselev от 23.06.2011, 12:35.разбивка на листы - имеющийся факт.
Ну так устраните его. Делается один раз - зато проблем больше никаких не будет.

Цитата: kiselev от 23.06.2011, 12:35
Пример правильной организации данных заключается в использовании сводной таблицы на основе данных за 3 месяца? Не возражаю. Но зачем тогда вводить листы 01-03, если данные за каждый месяц можно получить в одной сводной таблице?
Это я для Вас вывел. Что бы показать что у Вас наоборот всё. Должно быть из БД в отчёт, а не из отчёта в БД. Функциональность получается 100%, а внешне ничего не изменилось.
Бесплатная помощь: www.excelworld.ru
Платная помощь: sergeyizotov@excelworld.ru
Ю-money: 41001419691823 | WMR:126292472390

kiselev

Цитата: Serge 007 от 23.06.2011, 12:46
Какой был смысл в присвоении этих имён?

Да вот же он
Цитироватьдля других, более простых задач

В остальном все понятно, благодарю!