2013-07-29 7 views
-1

Необходимо автоматизировать преобразование CSV-файлов в XLS. Файлы CSV (содержащие классификаторы текста) будут автоматически загружаться с сайта SFTP и помещаться в файлы фиксированной ширины для интеграции AS400. В настоящее время у клиента есть кто-то, кто вручную регистрируется на SFTP-сайте, загружает файлы, открываются в Excel и сохраняет их как XLS. Они не имеют никакого контроля над оригинальным форматом или именем, поэтому скрипт должен иметь возможность конвертировать файлы независимо от имени файла и/или количества файлов. Я ищу для автоматизации ручного процесса или удаления спецификаторов текста, чтобы помочь управлять несоответствием сопоставления столбцов. Любой совет будет очень благодарен!Сценарий для преобразования CSV в XLS

Клиент использует SSIS в качестве средства разработки. Приносим извинения, если сообщение не ясно. Я новичок. Благодаря!

+3

С какой задачей вы столкнулись? В настоящее время этот вопрос слишком широк, чтобы ответить. –

+0

Соглашаясь с @StevenDoggart, это может быть связано с макросом или так же просто, как открытие CSV-файлов с помощью excel. – Jaycal

+0

Спасибо за быстрый ответ. Я пытаюсь автоматизировать процесс, чтобы пользователям не приходилось загружать и вручную сохранять как XLS. Оригинальные CSV-файлы имеют встроенные квалификаторы (") и им было дано указание загрузить файлы, открыть каждый файл и сохранить их как XLS, потому что этот процесс корректно обрабатывает каждый столбец и может быть загружен в ERP клиента. Пробовал отключение отборочных, но автоматически открывал файл –

ответ

1

Похоже, вы ищете что-то вроде этого:

Sub SaveAsXLSX() 

Dim wbSource As Workbook 
Dim vrtSelectedItem As Variant 

'Allows you to pick the CSV file from wherever it's been saved. 
With Application.FileDialog(msoFileDialogOpen) 
    .InitialFileName = "C:\Users\YourUsername\Documents" & "\" 
    .AllowMultiSelect = False 
    .Show 
     For Each vrtSelectedItem In .SelectedItems 
      Set wbSource = Workbooks.Open(vrtSelectedItem) 
     Next 
End With 

'Saves the file as an .xlsx file. 
wbSource.SaveAs Filename:="Random Name.xlsx", FileFormat:=51 

End Sub 

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

+0

Хочу поблагодарить всех вас f или ответы. Очень ценится. После изменения скрипта для этой цели работал пост Арича. Еще раз спасибо! –

Смежные вопросы