VBA FileFormat保存为.xls

时间:2015-04-20 16:52:15

标签: excel excel-vba vba

我有一个宏将活动工作表保存到新工作簿。但是它想将它保存为.xlsx,我需要它保存为.xls

Private Sub SaveBarList_Click()
ActiveSheet.Copy
With ActiveSheet.UsedRange
    .Copy
    .PasteSpecial xlValues
    .PasteSpecial xlFormats
End With
Dim strDir As String

'Show standard save as dialogue box
With Application.FileDialog(msoFileDialogSaveAs)
    If .Show = -1 Then
        strDir = .SelectedItems(1)
    End If
End With

Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Filename:=Application.GetSaveAsFilename, FileFormat:=-4143
Application.DisplayAlerts = True

ActiveWorkbook.Close

End Sub

1 个答案:

答案 0 :(得分:2)

ActiveWorkbook.SaveAs method的成员允许使用不同的文件格式:XlFileFormat Enumeration。在.xlsx旁边有几种格式,包括.xls。

请注意,MSDN关于.SaveAs的文章(上面的第一个链接)说"对于现有文件,默认格式是指定的最后一种文件格式;对于新文件,默认值是正在使用的Excel版本的格式。"