Excel宏文件大小

时间:2016-05-20 13:58:33

标签: excel-vba vba excel

我有一个带有宏的Excel文件。实际文件为6MB,当Save Macro运行时,文件将被保存,但其大小约为32MB,不包含任何宏。

我不知道为什么保存的文件大小大于实际文件大小。

保存宏

Sub SaveSummaries()
    '
    ' SaveSummaries Macro
    '
    Application.DisplayAlerts = False
    ActiveWorkbook.Save
    Sheets(Array("Donor Totals", "GDBA", "DT", "CLIC", "GOSH")).Select
    Sheets("Donor Totals").Activate
    Sheets(Array("Donor Totals", "GDBA", "DT", "CLIC", "GOSH")).Copy
    ChDir "C:\Users\Chandra.Cherukuri\Desktop\Area Donor Summaries"
    ActiveWorkbook.SaveAs Filename:= _
        "C:\Users\Chandra.Cherukuri\Desktop\Area Donor Summaries\Donor Summary_All Charities.xlsx", FileFormat:= _
        xlOpenXMLWorkbook, CreateBackup:=False
    ActiveWindow.Close
    Sheets("Area Summaries").Select

End Sub

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

线索在线:

ActiveWorkbook.SaveAs Filename:= _
    "C:\Users\Chandra.Cherukuri\Desktop\Area Donor Summaries\Donor Summary_All Charities.xlsx", FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False

您可以将格式指定为 xlOpenXMLWorkbook 。在这种文件格式中,您无法存储宏,它是一个XML文件 - 这基本上意味着一个带有大量开销(标签)的文本文件。

如果要使用Open XML格式的宏保存工作簿,可以使用: xlOpenXMLWorkbookMacroEnabled 选项,但它会创建一个大文件。在我看来, xlExcel12 (带有宏的二进制文件,* .xslb)或 xlExcel8 (标准Excel文件直到2003版)是更好的选择。