![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 11.02.2008
Сообщений: 119
|
![]()
Добрый день!
Помогите с макросом, пожалуйста! Имеем три Книги (Книга1, Книга2, Книга3). Из Книга2 Лист1 копируем диапазон ячеек в Книга1 Лист1, затем из Книга3 Лист1 копируем тот же диапазон ячеек в Книга1 Лист1 начиная с первой пустой ячейки после предыдушего копирования. То есть диапазон может быть заполненым не полностью. Для более подробной илюстрации своих слов прилагаю файлы. (В файле Книга1 Лист1 уже показано что нужно получить). Последний раз редактировалось Flangini; 11.06.2009 в 16:12. Причина: Забыл файлы прикрепить :) |
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 28.05.2009
Сообщений: 43
|
![]()
Если в списках в Книга2 и Книга3 нет пустых строк внутри списка, то можно использовать метод CurrentRegion для получения диапазона, ограниченного пустыми строками.
Option Explicit Public Sub UpdateKniga1() Dim nextRow As Integer Workbooks("Книга1.xls").Worksheets( "Лист1").Cells.Clear Workbooks("Книга2.xls").Worksheets( "Лист1").Cells(1, 1).CurrentRegion.Copy Workbooks("Книга1.xls").Worksheets( "Лист1").Cells(1, 1).PasteSpecial nextRow = Workbooks("Книга2.xls").Worksheets( "Лист1").Cells(1, 1).CurrentRegion.Rows.Count + 1 Workbooks("Книга3.xls").Worksheets( "Лист1").Cells(1, 1).CurrentRegion.Copy Workbooks("Книга1.xls").Worksheets( "Лист1").Cells(nextRow, 1).PasteSpecial Workbooks("Книга1.xls").Worksheets( "Лист1").Cells(nextRow, 1).EntireRow.Delete End Sub |
![]() |
![]() |
![]() |
#3 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
![]()
Надежнее так:
Код:
P.S. Макрос должен находиться в программном модуле книги "Книга1.xls".
Чем шире угол зрения, тем он тупее.
|
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 11.02.2008
Сообщений: 119
|
![]()
На самом деле у меня около 150 файлов, первый макрос от Евгений ГВС я смог дополнить
![]() Public Sub UpdateKniga1() Dim nextRow As Integer Workbooks("Книга1.xls").Worksheets( "Лист1").Cells.Clear Workbooks("Книга2.xls").Worksheets( "Лист1").Cells(1, 1).CurrentRegion.Copy Workbooks("Книга1.xls").Worksheets( "Лист1").Cells(1, 1).PasteSpecial nextRow = Workbooks("Книга1.xls").Worksheets( "Лист1").Cells(1, 1).CurrentRegion.Rows.Count + 1 Workbooks("Книга3.xls").Worksheets( "Лист1").Cells(1, 1).CurrentRegion.Copy Workbooks("Книга1.xls").Worksheets( "Лист1").Cells(nextRow, 1).PasteSpecial Workbooks("Книга1.xls").Worksheets( "Лист1").Cells(nextRow, 1).EntireRow.Delete nextRow = Workbooks("Книга1.xls").Worksheets( "Лист1").Cells(1, 1).CurrentRegion.Rows.Count + 1 Workbooks("Книга4.xls").Worksheets( "Лист1").Cells(1, 1).CurrentRegion.Copy Workbooks("Книга1.xls").Worksheets( "Лист1").Cells(nextRow, 1).PasteSpecial Workbooks("Книга1.xls").Worksheets( "Лист1").Cells(nextRow, 1).EntireRow.Delete End Sub а Ваш код, SAS888, к сожалению не знаю как модернизировать ![]() |
![]() |
![]() |
![]() |
#5 | |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
![]() Цитата:
Чем шире угол зрения, тем он тупее.
|
|
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 11.02.2008
Сообщений: 119
|
![]()
Абсолютно с Вами согласен!!!
![]() ![]() ![]() Задача: Есть 150 файлов, в которых на Лист1 содержится информация о людях, необходимо скопировать данные из этих файлов в один, добавив столбец "Название файла", чтобы потом можно было определить из какого файла была скопирована та или иная инфа. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Создание файла | leahov | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 6 | 18.05.2011 23:16 |
Открытие файла и создание графика на основе чисел из файла | Simon..14 | Общие вопросы C/C++ | 8 | 09.06.2009 10:18 |
Не печатается заголовок итогового столбца отчета | madmech | Общие вопросы Delphi | 3 | 15.05.2009 16:19 |
Создание файла | Nowise | Паскаль, Turbo Pascal, PascalABC.NET | 7 | 04.04.2008 19:55 |
Создание файла | BigRem | Общие вопросы Delphi | 8 | 06.01.2008 16:52 |