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

Вход

Регистрация

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

 

= Мир MS Excel/Копирование данных с разных файлов разного названия в один о - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Копирование данных с разных файлов разного названия в один о (Макросы/Sub)
Копирование данных с разных файлов разного названия в один о
GSeReGa Дата: Четверг, 14.05.2015, 13:40 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 14
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Подскажите как создать макрос для копирования в книгу "общий" лист "описание АСР" таблицы с листов "описание АСР" с других книг из папки "files" по порядку (желательно в алфавитном порядке) с обозначением в оглавлении названия самого файла. В прикрепленном файле показано, что имеется в виду. Заранее благодарен.
К сообщению приложен файл: 4075667.7z (22.0 Kb)
 
Ответить
СообщениеПодскажите как создать макрос для копирования в книгу "общий" лист "описание АСР" таблицы с листов "описание АСР" с других книг из папки "files" по порядку (желательно в алфавитном порядке) с обозначением в оглавлении названия самого файла. В прикрепленном файле показано, что имеется в виду. Заранее благодарен.

Автор - GSeReGa
Дата добавления - 14.05.2015 в 13:40
DJ_Marker_MC Дата: Четверг, 14.05.2015, 14:39 | Сообщение № 2
Группа: Друзья
Ранг: Ветеран
Сообщений: 991
Репутация: 213 ±
Замечаний: 0% ±

Excel 2019
Как говорится "вдруг угадал" )))

[vba]
Код
Sub CopyAllBook()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Application.CutCopyMode = False
Dim wb As Workbook
q = ThisWorkbook.Name

'открываем все книги в папке files
Dim MyName As String
Dim MyPath As String
Dim sPath As String
        MyPath = "C:\Users\Admin\Downloads\4075667\files\" 'тут указать где лежат файлы
        MyName = Dir(MyPath & "*.xls*")
         Do While MyName <> ""
            sPath = MyPath + MyName
            Excel.Application.Workbooks.Open sPath
            MyName = Dir
         Loop
             
'после открытия активируем основную рабочую книгу
Workbooks(q).Activate

'копируем в основную книгу данные с других книг
        For Each wb In Application.Workbooks
        LastRow = Cells.Find(What:="*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row + 1
            If wb.Name <> q Then
                LR = wb.Worksheets("Описание АСР").Cells(Rows.Count, 6).End(xlUp).Row
                Workbooks(q).Worksheets("Описание АСР").Cells(LastRow + 1, 1).Value = Replace(wb.Name, ".xls", "")
                With Range("A" & LastRow + 1 & ":F" & LastRow + 1)
                .Merge
                .HorizontalAlignment = xlCenter
                .Font.Bold = True
                End With
                wb.Worksheets("Описание АСР").Range("A3:F" & LR).Copy
                Workbooks(q).Worksheets("Описание АСР").Cells(LastRow + 2, 1).PasteSpecial xlPasteAll

                    
                wb.Close
            End If
        Next
[A1].Activate
Application.CutCopyMode = True
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
[/vba]

Только измените это
[vba]
Код
"C:\Users\Admin\Downloads\4075667\files\"
[/vba]
на тот путь где у Вас будут лежать файлы с которых вы копируете.
К сообщению приложен файл: marker_copybook.xls (79.5 Kb)
 
Ответить
СообщениеКак говорится "вдруг угадал" )))

[vba]
Код
Sub CopyAllBook()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Application.CutCopyMode = False
Dim wb As Workbook
q = ThisWorkbook.Name

'открываем все книги в папке files
Dim MyName As String
Dim MyPath As String
Dim sPath As String
        MyPath = "C:\Users\Admin\Downloads\4075667\files\" 'тут указать где лежат файлы
        MyName = Dir(MyPath & "*.xls*")
         Do While MyName <> ""
            sPath = MyPath + MyName
            Excel.Application.Workbooks.Open sPath
            MyName = Dir
         Loop
             
'после открытия активируем основную рабочую книгу
Workbooks(q).Activate

'копируем в основную книгу данные с других книг
        For Each wb In Application.Workbooks
        LastRow = Cells.Find(What:="*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row + 1
            If wb.Name <> q Then
                LR = wb.Worksheets("Описание АСР").Cells(Rows.Count, 6).End(xlUp).Row
                Workbooks(q).Worksheets("Описание АСР").Cells(LastRow + 1, 1).Value = Replace(wb.Name, ".xls", "")
                With Range("A" & LastRow + 1 & ":F" & LastRow + 1)
                .Merge
                .HorizontalAlignment = xlCenter
                .Font.Bold = True
                End With
                wb.Worksheets("Описание АСР").Range("A3:F" & LR).Copy
                Workbooks(q).Worksheets("Описание АСР").Cells(LastRow + 2, 1).PasteSpecial xlPasteAll

                    
                wb.Close
            End If
        Next
[A1].Activate
Application.CutCopyMode = True
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
[/vba]

Только измените это
[vba]
Код
"C:\Users\Admin\Downloads\4075667\files\"
[/vba]
на тот путь где у Вас будут лежать файлы с которых вы копируете.

Автор - DJ_Marker_MC
Дата добавления - 14.05.2015 в 14:39
SLAVICK Дата: Четверг, 14.05.2015, 14:44 | Сообщение № 3
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация: 766 ±
Замечаний: 0% ±

2019
Добавил копирование данных <_<

Пока делал - уже дали ответ...
Ну выбирайте что больше нравится. :)
К сообщению приложен файл: 4075668.rar (73.3 Kb)


Иногда все проще чем кажется с первого взгляда.

Сообщение отредактировал SLAVICK - Четверг, 14.05.2015, 14:48
 
Ответить
СообщениеДобавил копирование данных <_<

Пока делал - уже дали ответ...
Ну выбирайте что больше нравится. :)

Автор - SLAVICK
Дата добавления - 14.05.2015 в 14:44
GSeReGa Дата: Четверг, 14.05.2015, 15:15 | Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 14
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Спасибо огромное, очень выручили hands hands hands hands hands hands
 
Ответить
СообщениеСпасибо огромное, очень выручили hands hands hands hands hands hands

Автор - GSeReGa
Дата добавления - 14.05.2015 в 15:15
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Копирование данных с разных файлов разного названия в один о (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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