我有一个宏将活动工作表保存到新工作簿。但是它想将它保存为.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
答案 0 :(得分:2)
ActiveWorkbook.SaveAs method的成员允许使用不同的文件格式:XlFileFormat Enumeration。在.xlsx旁边有几种格式,包括.xls。
请注意,MSDN关于.SaveAs的文章(上面的第一个链接)说"对于现有文件,默认格式是指定的最后一种文件格式;对于新文件,默认值是正在使用的Excel版本的格式。"