Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Объединить книг в одну книгу - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Объединить книг в одну книгу
Ermak27 Дата: Понедельник, 24.12.2012, 11:30 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 0% ±

Добрый день! Столкнулся с такой проблемой, есть две книги каждая книга для каждой организации, они туда заполняют данные и есть итоговая книга по этим организация, как автоматически собрать данные с двух книг в итоговую?
Я перелазил кучу форумов и нашел только вариант где можно работать с листами, но мне это не подходит

Вот код

[vba]
Код

Option Explicit
Const rrow = 2

Private Sub Worksheet_Activate()
     Dim r As Range, sh As Worksheet, ind&
     Application.ScreenUpdating = False

     Range("a" & rrow & ":ar" & Cells(rrow, 2).End(xlDown).Row).Clear
     For Each sh In Worksheets
         With sh
             If .Index <> ActiveSheet.Index Then
                 Set r = .Range("a" & rrow & ":ar" & .Cells(.Rows.Count, 2).End(xlUp).Row)
                 r.Copy Cells(rrow + ind, 1)
                 ind = ind + r.Rows.Count
             End If
         End With
     Next

     Application.ScreenUpdating = True

End Sub

[/vba]

Я ниже прикрепил свой пример, подскажите пожалуйста как решить эту проблему!
К сообщению приложен файл: xls.zip (68.0 Kb)


Сообщение отредактировал Ermak27 - Понедельник, 24.12.2012, 11:31
 
Ответить
СообщениеДобрый день! Столкнулся с такой проблемой, есть две книги каждая книга для каждой организации, они туда заполняют данные и есть итоговая книга по этим организация, как автоматически собрать данные с двух книг в итоговую?
Я перелазил кучу форумов и нашел только вариант где можно работать с листами, но мне это не подходит

Вот код

[vba]
Код

Option Explicit
Const rrow = 2

Private Sub Worksheet_Activate()
     Dim r As Range, sh As Worksheet, ind&
     Application.ScreenUpdating = False

     Range("a" & rrow & ":ar" & Cells(rrow, 2).End(xlDown).Row).Clear
     For Each sh In Worksheets
         With sh
             If .Index <> ActiveSheet.Index Then
                 Set r = .Range("a" & rrow & ":ar" & .Cells(.Rows.Count, 2).End(xlUp).Row)
                 r.Copy Cells(rrow + ind, 1)
                 ind = ind + r.Rows.Count
             End If
         End With
     Next

     Application.ScreenUpdating = True

End Sub

[/vba]

Я ниже прикрепил свой пример, подскажите пожалуйста как решить эту проблему!

Автор - Ermak27
Дата добавления - 24.12.2012 в 11:30
KuklP Дата: Понедельник, 24.12.2012, 21:30 | Сообщение № 2
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
Для двух книг быстрей скопировать вручную, чем писать макрос. А для Вас глядишь и стимул будет подучить ВБА wink
На всякий случай загляните:
http://forum.msexcel.ru/index.php/topic,7217.msg46197.html#new


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728


Сообщение отредактировал KuklP - Понедельник, 24.12.2012, 21:33
 
Ответить
СообщениеДля двух книг быстрей скопировать вручную, чем писать макрос. А для Вас глядишь и стимул будет подучить ВБА wink
На всякий случай загляните:
http://forum.msexcel.ru/index.php/topic,7217.msg46197.html#new

Автор - KuklP
Дата добавления - 24.12.2012 в 21:30
Ermak27 Дата: Вторник, 25.12.2012, 12:40 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 0% ±

Может кто подскажет
 
Ответить
СообщениеМожет кто подскажет

Автор - Ermak27
Дата добавления - 25.12.2012 в 12:40
RAN Дата: Среда, 09.01.2013, 17:49 | Сообщение № 4
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Подсказываю

http://www.excel-vba.ru/chto-um....li-knig

Но согласен с предыдущим оратором

Цитата (KuklP)
Для двух книг быстрей скопировать вручную, чем писать макрос.


Ответ на ЛС.


Быть или не быть, вот в чем загвоздка!

Сообщение отредактировал RAN - Среда, 09.01.2013, 17:49
 
Ответить
СообщениеПодсказываю

http://www.excel-vba.ru/chto-um....li-knig

Но согласен с предыдущим оратором

Цитата (KuklP)
Для двух книг быстрей скопировать вручную, чем писать макрос.


Ответ на ЛС.

Автор - RAN
Дата добавления - 09.01.2013 в 17:49
Ermak27 Дата: Четверг, 10.01.2013, 15:21 | Сообщение № 5
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 0% ±

Подскажите пожалуйста почему у меня выдает ошибку

[vba]
Код
Range("a" & rrow & ":ar" & Cells(rrow, 6).End(xlDown).Row).Clear
[/vba]

файл прикрепил ниже
К сообщению приложен файл: new.zip (28.4 Kb)
 
Ответить
СообщениеПодскажите пожалуйста почему у меня выдает ошибку

[vba]
Код
Range("a" & rrow & ":ar" & Cells(rrow, 6).End(xlDown).Row).Clear
[/vba]

файл прикрепил ниже

Автор - Ermak27
Дата добавления - 10.01.2013 в 15:21
_Boroda_ Дата: Четверг, 10.01.2013, 15:41 | Сообщение № 6
Группа: Админы
Ранг: Местный житель
Сообщений: 16718
Репутация: 6505 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
А почему у Вас rrow=6, а не 10?


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеА почему у Вас rrow=6, а не 10?

Автор - _Boroda_
Дата добавления - 10.01.2013 в 15:41
Ermak27 Дата: Четверг, 10.01.2013, 15:50 | Сообщение № 7
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 0% ±

Да заметил ошибочка вышла, я не понимаю почему он мне копирует шапку, шапка у меня идет до 10 строчки и можете объяснить за что это отвечает Cells(rrow, 6), у меня постоянно на нее ругается


Сообщение отредактировал Ermak27 - Четверг, 10.01.2013, 17:25
 
Ответить
СообщениеДа заметил ошибочка вышла, я не понимаю почему он мне копирует шапку, шапка у меня идет до 10 строчки и можете объяснить за что это отвечает Cells(rrow, 6), у меня постоянно на нее ругается

Автор - Ermak27
Дата добавления - 10.01.2013 в 15:50
Ermak27 Дата: Четверг, 10.01.2013, 23:37 | Сообщение № 8
Группа: Пользователи
Ранг: Прохожий
Сообщений: 9
Репутация: 0 ±
Замечаний: 0% ±

подскажите плиз sad
 
Ответить
Сообщениеподскажите плиз sad

Автор - Ermak27
Дата добавления - 10.01.2013 в 23:37
_Boroda_ Дата: Пятница, 11.01.2013, 00:03 | Сообщение № 9
Группа: Админы
Ранг: Местный житель
Сообщений: 16718
Репутация: 6505 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
Cells(rrow, 6) это ячейка, номер строки которой равняется значению rrow, а номер столбца равняется 6
А для правильной работы именно этого макроса нужно:
1. сохранить книгу в формате xlsx или xlsb
2. заменить все ar на NA
3. заполнить в листах 1-3 столбец B в тех строках, которые нужно скопировать.
Хотя я бы написал немного иначе. Но и так работает.


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеCells(rrow, 6) это ячейка, номер строки которой равняется значению rrow, а номер столбца равняется 6
А для правильной работы именно этого макроса нужно:
1. сохранить книгу в формате xlsx или xlsb
2. заменить все ar на NA
3. заполнить в листах 1-3 столбец B в тех строках, которые нужно скопировать.
Хотя я бы написал немного иначе. Но и так работает.

Автор - _Boroda_
Дата добавления - 11.01.2013 в 00:03
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!