如何自动将excel 97转换为xlsx

时间:2017-12-05 18:15:02

标签: sql-server excel ssis etl file-conversion

我有一个包含excel 97 Data(.xls)的源系统。我想使用一个工具或程序,它可以帮助我自动将此数据转换为.xlsx(新的Excel)。 之后,我将使用Talend或SSIS将数据从xlsx加载到datawarehouse。

有人知道我可以使用哪些工具自动转换旧的Excel文件吗?

1 个答案:

答案 0 :(得分:0)

首先,Sql server集成服务可以读取包括Excel 97在内的所有Excel文件格式,只需使用Excel Connection Manager即可

第一个解决方案 - 使用Microsoft.Interop.Excel.dll

您可以使用Microsoft.Interop.Excel库在c#或vb.net中编写代码,以自动打开和保存Excel文件:

示例

功能

private void ConvertXlsToXlsx(string strFile)
{
    Excel.Application app = new Excel.Application();
    Excel.Workbook wb = app.Workbooks.Open(strFile);
    wb.SaveAs(strFile + "x", Excel.XlFileFormat.xlWorkbookNormal);
    wb.Close(false);
    app.Quit();
    Console.WriteLine("Done!");
}

代码

String Filename;
Filename = "C:\\File.xls";
ConvertXlsToXlsx(Filename);

第二个解决方案 - 使用Office迁移规划管理器

根据此Super User answer,您可以使用Office迁移规划管理器。

  

该工具包还包含Office文件转换器(OFC),它支持从二进制文件到OpenXML格式的批量文档转换。   (Technet

Overview on Technet

Download Link

第三方解决方案 - 第三方应用

只需使用谷歌搜索“Xls to Xlsx converter”,您就会发现可以使用的大量在线和离线转换器。