|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
25.06.2016, 11:09 | #1 |
Новичок
Джуниор
Регистрация: 25.06.2016
Сообщений: 1
|
Перенос данных из одного листа одной таблицы в создаваемые листы другой таблицы
Доброго времени суток! Подскажите пожалуйста как написать макрос в Excel для переноса данных из одного листа одной таблицы в создаваемые листы другой таблицы. Условия такие: есть таблица (Test), имеющая один лист (Лист1) с данными в трех столбцах, необходимо перенести информацию из ячеек столбцов "В" и "С" в другую таблицу (Nado), таким образом что ячейки первого столбца "А" первой таблицы (Test) должны стать названиями листов второй таблицы (Nado), при совпадении значений ячеек первого столбца "А" новая страница не должна создаваться, строки переносятся только на тот лист, который имеет название первой ячейки строки.
То есть нужен такой механизм: 1) копируем в буфер значение первой ячейки А1 таблицы Test, открываем таблицу Nado, создаем лист с именем из буфера (значение ячейки А1 таблицы Test); 2) копируем значения первой строчки ячеек "В1" и "С1" таблицы Test, соответственно, в ячейки "А1" "В1" первого листа (название="А1" таблицы Test) таблицы Nado; 3) далее сравниваем значение ячейки "А1" таблицы Test со значением ячейки "В1" таблицы Test, если "равно", то продолжаем записывать на тот же лист (название="А1" таблицы Test) таблицы Nado (В2 и С2 соответственно в А2 и В2), если "не равно", то создаем новый лист в таблице Nado c таким названием и копируем ячейки как описано выше (В2 и С2 таблицы Test соответственно в А1 и В1 нового листа таблицы Nado); 4) продолжаем до тех пор пока не кончатся данные. Спасибо за Ваше потраченное время и силы! |
25.06.2016, 11:25 | #2 |
2 the Nation Glory
Старожил
Регистрация: 27.05.2014
Сообщений: 3,289
|
Если test-столбец А не отсортирован, что тогда?
upd: вариант разноса по листам Код:
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы. Последний раз редактировалось Aleksandr H.; 25.06.2016 в 12:04. Причина: добавил код |
25.06.2016, 11:58 | #3 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
из нормально организованных данных Вам нужно получить СВАЛКУ страниц??? интересное решение!
если теперь в файле несколько тысяч страниц: как выяснить есть в нем страница с определенным именем? как ее найти? такой файл есть смысл делать только если это задача от начальника, а данными удобнее пользоваться, когда они в одном большом списке
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
25.06.2016, 12:27 | #4 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
тогда нужно использовать словарь с коллекциями -
сперва пробежаться по столбцу и собрать в словарь все номера строк - каждому слову/названию свою коллецию затем пробежаться по словарю и создавать и копировать, создавать и копировать... просто и прозрачно.
webmoney: E265281470651 Z422237915069 R418926282008
|
25.06.2016, 12:46 | #5 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
останется только написать определенное количество макросов для обработки этих сотен или тысяч страниц...
что тоже довольно очевидно
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
25.06.2016, 14:14 | #6 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Словарь с коллекциями:
Код:
webmoney: E265281470651 Z422237915069 R418926282008
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Перенос данных с одного листа на другой | 1k0naMyst | Microsoft Office Excel | 0 | 17.10.2012 11:01 |
Перенос данных с одного листа на другой | Melnan | Microsoft Office Excel | 0 | 01.04.2011 11:58 |
Перенос данных из одного листа в другой | Светланка85 | Microsoft Office Excel | 2 | 07.09.2009 09:18 |
авт. перенос данных из нескольких столбцов одной таблицы в один столбец другой таблицы | A_ALL | Microsoft Office Access | 7 | 24.08.2009 21:13 |