Страницы: 1
RSS
Как импортировать множество файлов CSV в один Excel файл
 
Кто нибудь может предложить вариант макро, который объединит множество файлов CSV в один Excel файл на один лист? Все CSV абсолютно одинаковы, находятся в одной папке с книгой Excel, то есть открыл книгу Excel запустил функцию (либо кнопку) и он без вопросов объединил все файлы csv в один лист. Лучше, что б и функцию запускать не надо было, просто открыл книгу. Спасибо :)
(если надо скину пример файлов csv)
Изменено: ole-van-de - 09.09.2019 13:07:54
 
PQ в помощь
Соблюдение правил форума не освобождает от модераторского произвола
 
неееее, а я хочу готовый вариант)). если честно нашел на просторах интернета вариант, правда запрашивает директорию и берет всего два столбца, а не все, которые есть в csv. Параллельно разбираюсь сейчас пытаюсь модернизировать..
 
Цитата
ole-van-de написал:
я хочу готовый вариант
тогда ошиблись веткой - Вам в ветку Работа
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
я так понимаю вряд ли там кто то будет за просто так помогать). ладно, сейчас сделаю, выложу.
 
Цитата
ole-van-de написал:
кто то будет за просто так помогать
за просто так помогать будут здесь. Но Вы же говорите не про помогать, а про готовый с нуля вариант без Ваших усилий. Разницу улавливаете? :)
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Согласен. Как уже вижу тут двумя-пятью строчками не обойтись, (как в powershell кстати по данному вопросу). Но мне нужен Excel. Буду копать дальше.
Изменено: ole-van-de - 09.09.2019 14:03:29
 
Для начала можно обойтись одной строкой
Код
copy /b *.csv joined.csv

ну а затем включаете запись макроса и вперёд импортировать этот ОДИН файл.
Изменено: Hugo - 09.09.2019 14:10:11
 
Это команда vba? мне нужно что бы всё делала книга excel, csv файлы каждый раз будут меняться, кроме формата внутри.  
 
В powershell я бы это сделал примерно так:
1. Считать все файлы из такой то директории в одну переменную (массив с данными)
2. Выгрузить содержимое переменной (массива) в конечный файл
Две строчки.

Но есть недостаток. Файлы csv поступают постоянно и информация на момент просмотра в "собирательном" файле excel должна быть актуальна, это значит надо вешать планировщик задания на этоит скрипт и запускать его постоянно через какое-то время, чего не хотелось бы. А пользоваться файлом будут без меня. Я бы сам запускал себе этот скрипт и пользовался и т.д.
Изменено: ole-van-de - 09.09.2019 14:27:35
 
Это команда Windows/DOS или что там у них сейчас...
Можно её встроить в макрос, можно выполнить отдельно - но если там уже будет объединённый файл с предыдущего запуска, то он тоже подтянется, так что механизм нужно продумать.
 
Но если файл не заканчивается переводом строки то последняя строка и первая строка следующего файла будут одной строкой
Страницы: 1
Наверх