|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
02.03.2011, 20:29 | #1 |
Александр
Администратор
Регистрация: 28.10.2006
Сообщений: 17,501
|
Скопировать таблицу с заменой одного стобца из массива строк
В книге 1 подготовлена шапка таблицы.
В книге 2 сама шаблонная таблица В книге 3 в столбце A список из N строк (число строк заранее не известно) Нужно осуществить цикл копирования таблицы N Раз из книги 2 в Книгу 1 с новыми данными для всего стобца. Получаеться в итоге таблица с шапкой. в которой различая лишь 1 столбце. Есть ли готовый макрос или какие функции нужно использовать для организации цикла и копирования все таблицы из книги в книгу? |
02.03.2011, 21:18 | #2 | |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Цитата:
Нужны примеры файлов - что есть изначально, и что должно получиться. Так будет намного проще разобраться и помочь Где макросу искать все эти файлы? Они в одной папке? На момент запуска все файлы будут открыты? |
|
02.03.2011, 21:44 | #3 | |
Александр
Администратор
Регистрация: 28.10.2006
Сообщений: 17,501
|
Вероятно я перепутал термины. не книга - а лист.
Цитата:
витоге должно получиться в первой книгке вот что: Код:
|
|
02.03.2011, 22:12 | #4 |
Старожил
Регистрация: 02.05.2009
Сообщений: 3,907
|
Можно так
Код:
Анализ,обработка данных Недорого
|
02.03.2011, 22:30 | #5 |
Александр
Администратор
Регистрация: 28.10.2006
Сообщений: 17,501
|
doober, работает так как надо. спасибо. смысл понятен. попытаюсь приспособить для более объёмной таблицы.
|
02.03.2011, 22:34 | #6 |
Форумчанин
Регистрация: 07.03.2010
Сообщений: 796
|
Sub test()
a = Sheets(2).[a1].CurrentRegion.Value b = Sheets(3).[a1].CurrentRegion.Value ReDim c(1 To UBound(a) * UBound(b), 1 To 4) For j = 1 To UBound(b) For i = 1 To UBound(a) x = x + 1 c(x, 1) = a(i, 1) c(x, 2) = a(i, 2) c(x, 3) = a(i, 3) c(x, 4) = b(j, 1) Next: Next Sheets(1).[a10].Resize(UBound(a) * j, 4) = c End Sub
Логика?!.... она где то рядом... E_mail: dg_rusak@mail.ru Если спасибо мало: Яндекс . Деньги - 41001731366021 WM R269866874234
Последний раз редактировалось R Dmitry; 02.03.2011 в 23:06. Причина: поправился :) |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
как реализовать функцию для того что бы скопировать элементы одного массива во второй в обратном порядке | mansp | Общие вопросы C/C++ | 8 | 28.10.2010 15:48 |
Проблемы с заменой элементов одномерного массива | AlexanderIvanov | Общие вопросы C/C++ | 2 | 13.04.2010 10:23 |
Консультация с заменой кода для массива. | eluminat | Помощь студентам | 3 | 01.07.2009 11:05 |
сложение чисел одного стобца в двухмерном массиве | Lorden | Помощь студентам | 3 | 04.02.2009 23:08 |
как раскидать сгруппированные данные из одного стобца по нескольким | hudoi | Microsoft Office Excel | 2 | 07.02.2007 23:42 |