Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
1 / 1 / 0
Регистрация: 30.11.2022
Сообщений: 32
1

Перенос данных из нескольких файлов в один (на разные листы)

11.10.2023, 09:50. Показов 780. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день!
Подскажите, пожалуйста, как прописать код, чтобы данные из нескольких файлов (при выборе через всплывающее окно), данные копировать в рабочий файл на определенные листы, в зависимости от наименования файла. При этом иногда нужно целый лист, иногда определенный диапазон/столбцы.
Например:
В рабочий файл на лист База при всплывающем окне (выборе файлов) в диапазон A:P (с 3 строки и до конца вниз) копируются данные из аналогичного диапазона (также с 3 строки) файла, в наименовании которого есть слово "База". (проблема еще в том, что еще есть пустые листы, или их можно игнорировать?)

Аналогичная ситуация, если не конкретный диапазон нужен, а весь лист.
А также, если в файле, из которого нужно скопировать данные, требуются данные только с определенного листа (если листов с данными несколько).

Пока задание абстрактное, без конкретных примеров. Возможно, есть готовое решение, где останется поменять диапазон или наименование листа?
Или же все таки требуется более детальное описание?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.10.2023, 09:50
Ответы с готовыми решениями:

Перенос данных из нескольких файлов excel в один
Как из множества файлов Excel перенести значения в одну сводную таблицу в отдельном файле? Суть...

VBA перенос данных из ячеек нескольких файлов в один новый
доброго времени суток, друзья! требуется собрать данные из нескольких одинаковых файлов...

Перенос данных excel -excel на разные листы
Доброго времени суток. Возникла небольшая проблема: Переношу данные из книги в книгу, но в каждой...

Перенос данных из нескольких документов в один через Конвертацию Данных
Может есть у кого примеры такого переноса? Сама задача: Есть много документов с табличной частью...

7
8 / 6 / 4
Регистрация: 01.05.2023
Сообщений: 27
11.10.2023, 11:16 2
Drta2,
Цитата Сообщение от Drta2 Посмотреть сообщение
задание абстрактное
и
Цитата Сообщение от Drta2 Посмотреть сообщение
готовое решение
понятия несовместимые.
0
2739 / 1714 / 778
Регистрация: 23.03.2015
Сообщений: 5,432
11.10.2023, 11:18 3
Drta2,
Возможна помощь, если прикрепить файлы и описать конкретно задачу.
0
1 / 1 / 0
Регистрация: 30.11.2022
Сообщений: 32
11.10.2023, 12:41  [ТС] 4
Narimanych,
Добрый день!
Подробное описание во вложении.
Не понял, как редактировать исходное сообщение и возможно ли это сделать?


Кто может помочь?
Вложения
Тип файла: xlsx Техническое задание.xlsx (12.4 Кб, 42 просмотров)
0
10742 / 5583 / 1409
Регистрация: 05.10.2016
Сообщений: 15,787
10.11.2023, 22:50 5
Цитата Сообщение от Drta2 Посмотреть сообщение
Кто может помочь?
С чем помочь?

Да, возни относительно много, но ничего такого уж сложного.
Всё чётко описано, осталось только в код перевести ...
0
11517 / 3803 / 681
Регистрация: 13.02.2009
Сообщений: 11,222
10.11.2023, 23:39 6
Цитата Сообщение от Drta2 Посмотреть сообщение
Кто может помочь?
Боюсь, что помочь никто не сможет!
Нет конкретного вопроса!
Что не получается?
Цитата Сообщение от Drta2 Посмотреть сообщение
, как прописать код, чтобы данные из нескольких файлов (при выборе через всплывающее окно)
это один вопрос. Надо чтобы имелась возможность выбрать все файлы одновременно или выбирать файлл после обработки предыдущего?
Цитата Сообщение от Drta2 Посмотреть сообщение
иногда нужно целый лист, иногда определенный диапазон/столбцы.
Это макрос как-то должен определить или праВАНГОВАТЬ?
Цитата Сообщение от Drta2 Посмотреть сообщение
(проблема еще в том, что еще есть пустые листы, или их можно игнорировать?)
Тут точно без ванги не обойтись
ну или нужно конкретное ТЗ с другом разделе
0
1 / 1 / 0
Регистрация: 30.11.2022
Сообщений: 32
13.11.2023, 16:17  [ТС] 7
Alex77755,
но ранее есть вложенное описание, что и как нужно...
Надо чтобы имелась возможность выбрать все файлы одновременно или выбирать файлл после обработки предыдущего? << Да, нужно выбрать все файлы одновременно и чтобы макрос что нужно по названию файлов раскидал по листам отдельного файла...
Если требуется, чтобы листы назвались определенным образом и без этого никак не получится, то можно это как то произвольно указать) Или банально Лист1 и т.п....
0
11517 / 3803 / 681
Регистрация: 13.02.2009
Сообщений: 11,222
14.11.2023, 23:22 8
выбрать несколько файов из одной папки с дальнейшей обработкой в зависимости от содержания слов в имени файла в общих чертах можно так:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Sub ShowFileDialog()
    Dim oFD As FileDialog
    Dim x, lf As Long
    Dim wb As Workbook, wbi As Workbook
    Set wb = ActiveWorkbook
    'назначаем переменной ссылку на экземпляр диалога
    Set oFD = Application.FileDialog(msoFileDialogFilePicker)
    With oFD 'используем короткое обращение к объекту
        .AllowMultiSelect = True
        .Title = "Выбрать файлы отчетов" 'заголовок окна диалога
        .Filters.Clear 'очищаем установленные ранее типы файлов
        .Filters.Add "Excel files", "*.xls*;*.xla*", 1 'устанавливаем возможность выбора только файлов Excel
        .InitialFileName = "С:\Temp\Книга1.xlsx" 'назначаем папку отображения и имя файла по умолчанию
        .InitialView = msoFileDialogViewDetails 'вид диалогового окна(доступно 9 вариантов)
        If oFD.Show = 0 Then Exit Sub 'показывает диалог
        'цикл по коллекции выбранных в диалоге файлов
        For lf = 1 To .SelectedItems.Count
            x = .SelectedItems(lf) 'считываем полный путь к файлу
            Debug.Print x
            Set wbi = Workbooks.Open(x) 'открытие книги
            Select Case True
                Case InStr(1, x, "База", vbTextCompare)
                    'тут код обработки файла вмени которого есть "База" с переходом на нужный лист и пр.
                Case InStr(1, x, "ОСВ", vbTextCompare)
                    'тут код обработки файла вмени которого есть "ОСВ" с переходом на нужный лист и пр.
                Case InStr(1, x, "РЕПО", vbTextCompare)
                    'тут код обработки файла вмени которого есть "РЕПО" с переходом на нужный лист и пр.
                Case InStr(1, x, "ЛС", vbTextCompare)
                    'тут код обработки файла вмени которого есть "ЛС" с переходом на нужный лист и пр.
 
'                и тд
            End Select
        Next
    End With
End Sub
1
14.11.2023, 23:22
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.11.2023, 23:22
Помогаю со студенческими работами здесь

Перенос данных из нескольких книг в один файл
Здравствуйте! Помогите исправить код. Мне нужно перенести данные из 4-х книг в один файл, но...

Перенос данных из нескольких Excel в один документ Word
Здравствуйте уважаемые! Помогите понять как сделать следующее... В ходе работы некоторой...

Перенос с нескольких листов на один сводный с разнесением данных
Добрый день! Нужна помощь по переносу данных на один лист с нескольких. Нужно, чтобы строчки шли...

Положить два DataTable в один Excel на разные листы
Всем привет. Нужно при нажатие на кнопку. Положить два datatable в один excel. на разные листы. ...

Текстовые файлы на разные листы в один документ Excel
Народ, подскажите как сделать: есть текстовые файлы с данными - нужно загнать все эти текстовые...

Перенос данных из двух файлов в один
Добрый день! Помогите написать макрос для такой задачи: имеется два файла с названием формата...

Сбор данных их нескольких файлов в один
Здравствуйте тут часто подымались темы о обработке различных отчетов.но к сожалению из-за...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru