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

Вход

Регистрация

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

 

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

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

Excel 2016
Доброго времени суток! Знатоки, помогите с оптимизацией рабочего процесса. Суть в следующем. Есть папка с файлами Excel с разными именами. Структура файлов везде единая. Необходимо данные из всех файлов перенести в единый файл в разные строки. Т.е. берем значения a1, c7, d8, f10 первого файла и вставляем их в b3, с3, d3, e3, берем те же значения другого файла (a1, c7, d8, f10) и вставляем их в следующую строку (b4, с4, d4, e4) общего файла. Значения в разных файлах разные, есть и текст и символы, значения могут повторяться, но есть уникальное поле - c7, где значения всегда разные (уникальный номер). Подскажите как реализовать. СПАСИБО!!!
 
Ответить
СообщениеДоброго времени суток! Знатоки, помогите с оптимизацией рабочего процесса. Суть в следующем. Есть папка с файлами Excel с разными именами. Структура файлов везде единая. Необходимо данные из всех файлов перенести в единый файл в разные строки. Т.е. берем значения a1, c7, d8, f10 первого файла и вставляем их в b3, с3, d3, e3, берем те же значения другого файла (a1, c7, d8, f10) и вставляем их в следующую строку (b4, с4, d4, e4) общего файла. Значения в разных файлах разные, есть и текст и символы, значения могут повторяться, но есть уникальное поле - c7, где значения всегда разные (уникальный номер). Подскажите как реализовать. СПАСИБО!!!

Автор - JIumBuH
Дата добавления - 18.06.2018 в 12:05
Roman777 Дата: Понедельник, 18.06.2018, 12:30 | Сообщение № 2
Группа: Проверенные
Ранг: Ветеран
Сообщений: 980
Репутация: 127 ±
Замечаний: 0% ±

Excel 2007, Excel 2013
JIumBuH, рекомендую Вам ознакомиться с правилами форума.
Файлик(и)-пример нужен.


Много чего не знаю!!!!
 
Ответить
СообщениеJIumBuH, рекомендую Вам ознакомиться с правилами форума.
Файлик(и)-пример нужен.

Автор - Roman777
Дата добавления - 18.06.2018 в 12:30
Manyasha Дата: Понедельник, 18.06.2018, 12:57 | Сообщение № 3
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация: 898 ±
Замечаний: 0% ±

Excel 2010, 2016
например так:
[vba]
Код
Sub sbor()
    Application.ScreenUpdating = False
    Dim f_path$, book$, r%, wb As Workbook
    
    f_path = ThisWorkbook.Path & "\"
    book = Dir(f_path & "*.xlsx")
    
    With ThisWorkbook.Sheets(1)
        r = .Cells(Rows.Count, 2).End(xlUp).Row + 1
        Do While book <> ""
            Set wb = Workbooks.Open(f_path & book)
            .Cells(r, 2) = wb.Sheets(1).[a1].Value
            .Cells(r, 3) = wb.Sheets(1).[c7].Value
            .Cells(r, 4) = wb.Sheets(1).[d8].Value
            .Cells(r, 5) = wb.Sheets(1).[f10].Value
            wb.Close
            
            r = r + 1
            book = Dir
        Loop
    End With
    Application.ScreenUpdating = True
End Sub
[/vba]


ЯД: 410013299366744 WM: R193491431804
 
Ответить
Сообщениенапример так:
[vba]
Код
Sub sbor()
    Application.ScreenUpdating = False
    Dim f_path$, book$, r%, wb As Workbook
    
    f_path = ThisWorkbook.Path & "\"
    book = Dir(f_path & "*.xlsx")
    
    With ThisWorkbook.Sheets(1)
        r = .Cells(Rows.Count, 2).End(xlUp).Row + 1
        Do While book <> ""
            Set wb = Workbooks.Open(f_path & book)
            .Cells(r, 2) = wb.Sheets(1).[a1].Value
            .Cells(r, 3) = wb.Sheets(1).[c7].Value
            .Cells(r, 4) = wb.Sheets(1).[d8].Value
            .Cells(r, 5) = wb.Sheets(1).[f10].Value
            wb.Close
            
            r = r + 1
            book = Dir
        Loop
    End With
    Application.ScreenUpdating = True
End Sub
[/vba]

Автор - Manyasha
Дата добавления - 18.06.2018 в 12:57
JIumBuH Дата: Понедельник, 18.06.2018, 13:23 | Сообщение № 4
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Извиняюсь, что не могу выложить файлы для примера. Получится только вечером.
Manyasha, это почти то, что нужно. Только вот у меня на каждый файл Excel спрашивает "Вы хотите сохранить....?".
И ещё, а можно в каждую строку первого столбца добавить имя файла откуда были скопированы данные в строку?
 
Ответить
СообщениеИзвиняюсь, что не могу выложить файлы для примера. Получится только вечером.
Manyasha, это почти то, что нужно. Только вот у меня на каждый файл Excel спрашивает "Вы хотите сохранить....?".
И ещё, а можно в каждую строку первого столбца добавить имя файла откуда были скопированы данные в строку?

Автор - JIumBuH
Дата добавления - 18.06.2018 в 13:23
StoTisteg Дата: Понедельник, 18.06.2018, 13:37 | Сообщение № 5
Группа: Авторы
Ранг: Старожил
Сообщений: 1161
Репутация: 103 ±
Замечаний: 0% ±

Excel 2010
у меня на каждый файл Excel спрашивает "Вы хотите сохранить....?"

Добавьте в начало кода [vba]
Код
Application.DisplayAlerts=False
[/vba] а в конец [vba]
Код
Application.DisplayAlerts=True
[/vba]


Интуитивно понятный код - это когда интуитивно понятно, что это код.
 
Ответить
Сообщение
у меня на каждый файл Excel спрашивает "Вы хотите сохранить....?"

Добавьте в начало кода [vba]
Код
Application.DisplayAlerts=False
[/vba] а в конец [vba]
Код
Application.DisplayAlerts=True
[/vba]

Автор - StoTisteg
Дата добавления - 18.06.2018 в 13:37
_Boroda_ Дата: Понедельник, 18.06.2018, 13:41 | Сообщение № 6
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация: 6481 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Проще закрывать не сохраняя
[vba]
Код
wb.Close False
[/vba]
Про имя файла
[vba]
Код
.Cells(r, 1) = book
[/vba]


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеПроще закрывать не сохраняя
[vba]
Код
wb.Close False
[/vba]
Про имя файла
[vba]
Код
.Cells(r, 1) = book
[/vba]

Автор - _Boroda_
Дата добавления - 18.06.2018 в 13:41
JIumBuH Дата: Понедельник, 18.06.2018, 14:51 | Сообщение № 7
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
СПАСИБО Всем большое!!! Очень выручили!
 
Ответить
СообщениеСПАСИБО Всем большое!!! Очень выручили!

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

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