Страницы: 1
RSS
Макрос вставки определённого диапазона данных в общую таблицу
 
Добрый вечер, дорогие форумчане!
Столкнулась с пока нерешаемой для меня задачей, выручите плиз)
Есть документ, который содержит в себе информацию по разным структурам. Часто возникает потребность в дополнении таблицы путём вставки диапазона данных внутрь общей структуры.
Вручную это делать довольно долго, особенно когда таблица состоит из десятков тысяч строк.
Нужен макрос, который будет в указанный номер ячейки (в идеале с клавиатуры) добавлять n-ое количество строк (в соответствии с количеством строк диапазона, который нужно вставить), и собственно вставлять этот диапазон внутрь общей таблицы. Диапазон для вставки располагается на отдельном листе (хотя это и не принципиально, просто мне кажется так будет проще)
Заранее большое спасибо!
Изменено: criss - 19.03.2019 22:30:22
 
Цитата
criss написал:
вставлять этот диапазон внутрь общей таблицы
И как узнать, после какой строки нужно вставлять новый блок?
 
Юрий М, да, я заметила, что сразу не указала информацию про это
Но потом дополнила)
В идеале было бы с клавиатуры конечно
 
Цитата
criss написал:
в указанный номер ячейки
Не совсем удачный вариант: человек может ошибиться на единичку и новый блок разорвёт существующий...
Тут было бы неплохо договориться, каким образом можно определять конец/начало существующих блоков. Например, в показанных данных заголовки блоков не имеют символа подчеркивания, а данные внутри блока имеют. Этой действительно так в реальности?
 
Ещё вариант - искать по цвету заливки, если в реальности таблица так и оформлена.
Какой вариант выбираем?
 
Юрий М, в реальности по-разному. Преимущественно заголовки без подчеркиваний, но если по этому подчёркиванию составлять в макросе условие, то будет не во всех ситуациях корректное выполнение.
Я долго думала, каким способом определить конец/начало блоков, но самым эффективным в данном случае наверное всё же будет указание номера начальной для вставки строки с клавиатуры.
На мой взгляд, можно было бы задать такой алгоритм макроса - пользователь указывает номер строки, с которого нужно вставлять диапазон данных. Макрос считывает количество строк в диапазоне, вставляет обнаруженное число строк, и просто копирует диапазон...
 
Цитата
Юрий М написал:
Ещё вариант - искать по цвету заливки, если в реальности таблица так и оформлена.
Юрий М, кстати да, цвет у заголовков всегда свой, а у остальной части блока свой, так что такой способ может быть использован.
Но опять же, нужно же всё равно выбирать, куда именно вставлять тот или иной диапазон. Или Вы предлагаете создать проверку по двум условиям (вводимому номеру строки с клавиатуры и цвету заливки)?
 
Вижу пока два варианта:
1. Ваш - по номеру строки.
2. Мой (с цветом) - макрос по признаку заливки сформирует список округов и спросит Вас - после какого вставить новый блок. Вам нужно будет выбрать из предложенного списка.
 
Юрий М, давайте попробуем с цветом? Вариант конечно сложнее, но это поможет также изучить и понять структуру макросов (что является несомненным плюсом)
 
Проверьте. Жмём на кнопочку, выбираем нужный округ. ПЕРЕД ним будет вставлен новый блок со второго листа.
 
Юрий М, это просто высший класс, всё работает)
Спасибо Вам огроооомное)  
 
Муррржалуйста! ))
Страницы: 1
Наверх