Convert XLS to XLSB Programmatically?

后端 未结 3 1427
佛祖请我去吃肉
佛祖请我去吃肉 2020-12-09 18:55

I have a customer that needs to convert XLS files to XLSB. Has anyone done this programmatically, (with or without an add-on --- doesn\'t matter --- just need to be able to

3条回答
  •  再見小時候
    2020-12-09 19:32

    Well, then there is a short format verison:

    using Microsoft.Office.Interop.Excel;
    
    // init excel
    Application excelApplication = new Application();
    
    // ...
    
    // open book in any format
    Workbook workbook = excelApplication.Workbooks.Open("1.xls", XlUpdateLinks.xlUpdateLinksNever, true, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
    
    // save in XlFileFormat.xlExcel12 format which is XLSB
    workbook.SaveAs("1.xlsb", XlFileFormat.xlExcel12, Type.Missing, Type.Missing, Type.Missing, Type.Missing, XlSaveAsAccessMode.xlExclusive, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
    
    // close workbook
    workbook.Close(false, Type.Missing, Type.Missing);
    
    // ...
    
    // shutdown excel
    excelApplication.Quit();
    

    You will need a Excel installation with .NET programming support (disabled by default in installer!) and reference MS Office PIA assembly for Excel from your project:

    add Excel PIA reference

    References: Workbooks.Open, workbook.SaveAs, XlFileFormat.xlExcel12

提交回复
热议问题