需要保存xls工作簿作为xlsb与VBA

Ste*_*ith 8 excel vba excel-vba

我使用宏来创建每日报告.宏在历史上将xls报告保存为xls.由于文件较大,我想将报告保存为xlsb.两个问题.我正在使用的宏脚本将运行,但我以后无法打开xlsb文件.收到的消息是

"Excel无法打开文件'RDN Activity Report.xlsb',因为文件格式或文件扩展名无效.请验证文件是否已损坏且文件扩展名是否与文件格式匹配.

txtFileName = Format(Date - 1, "yyyymmdd")
ActiveWorkbook.SaveAs Filename:= _
    "\\Clt-stor01a\CA_Services\RDN Reports\ForUploadPrev\RDN Activity Report." & txtFileName & ".xlsb", _
    FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
    ReadOnlyRecommended:=False, CreateBackup:=False
    txtFileName = Format(Date - 1, "yyyymmdd")
Run Code Online (Sandbox Code Playgroud)

注意:我还需要一个脚本,当文件名在文件名中有日期时,可以打开文件,文件日期是昨天的日期,如" RDN Activity Report.20150726"

Mat*_*ewD 20

使用SaveAs参数FileFormat:

  • 50= xlExcel12(2007年至2013年的Excel二进制工作簿,有或没有宏,xlsb)

  • 51= xlOpenXMLWorkbook(2007 - 2013年没有宏,xlsx)

  • 52= xlOpenXMLWorkbookMacroEnabled(有或没有宏在2007-2013,xlsm)

  • 56= xlExcel8(Excel 2007-2013中的97-2003格式,xls)

    ActiveWorkbook.SaveAs "C:\temp\text.xlsb", fileformat:=50
    
    Run Code Online (Sandbox Code Playgroud)