将CSV转换为XLS的脚本

时间:2013-07-29 18:16:59

标签: vb.net excel vbscript ssis

需要自动将CSV文件转换为XLS。 CSV文件(包含文本限定符)将自动从SFTP站点下载并推送到固定宽度文件以进行AS400集成。客户目前有人手动登录SFTP站点,下载文件,在Excel中打开并保存为XLS。他们无法控制原始格式或命名,因此无论文件名和/或文件数如何,脚本都必须能够转换文件。我希望自动化手动过程或删除文本限定符,以帮助管理列映射差异。任何建议将不胜感激!

客户使用SSIS作为他们的开发工具。如果帖子不清楚,我道歉。我是新手谢谢!

1 个答案:

答案 0 :(得分: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更改为保存这些下载内容的文件路径。