Нужен пакетный скрипт для копирования данных из A.csv в B.xls
Я новичок в пакетных сценариях и мне нужна помощь.
Я хочу скопировать содержимое csv-файла A.csv на первый рабочий лист с именем "GenData" в существующем XLS-файле B.xls.
B.xls содержит несколько макросов на своем втором рабочем листе для генерации графика из данных, скопированных на его первый рабочий лист.
Оба файла A.csv и B.xls находятся в одной папке. Также я хочу повторить это примерно для 40 папок, содержащих эти два файла.
C:\Desktop\Abby\Folder1\A.csv
C:\Desktop\Abby\Folder40\A.csv
PS: я не хочу конвертировать A.csv в B.xls, поскольку у B.xls есть другие рабочие листы, которые я хочу сохранить. Я хочу скопировать содержимое A.csv в первую рабочую таблицу существующего файла B.xls.
Я пробовал несколько скриптов, но существующий файл B.xls перезаписывается, и генерация графиков на втором листе не работает.
3 ответа
Вы можете использовать PowerShell для чтения CSV и сохранения в Excel ...
Посмотрите эту статью, парни... Преобразование файла CSV или файлов в книгу Excel
Просто плеваться здесь, но кто-то более опытный, чем я, в скриптах VBA, есть ли способ вызвать функцию Excel "импорт из текста" в макросе?
Похоже, что при запуске из скрипта функция "импортировать из текста" делает именно то, что хочет OP. Поместите все данные CSV в новый лист и оставьте все остальное вместе.
ОП, я знаю, что это не совсем то, что вам нужно, но если вы не найдете решение, вызванное скриптом, это может быть то, что вы ищете?
Я бы использовал для этого надстройку Power Query от Microsoft. Можно импортировать данные из файлов или даже папок с файлами. Он также может позаботиться о неизбежных преобразованиях, необходимых на этом пути.
Вот хороший пост в блоге, показывающий Power Query, уничтожающий папку csv-файлов:
http://devinknightsql.com/2013/08/13/extracting-data-from-multiple-files-with-power-query/