Excel 将工作簿另存为csv文件时创建过多工作簿
vba将复制一个范围-->创建一个新工作簿-->将其另存为csv,我设法访问了以下内容,但它打开了太多的工作簿,即使将它们另存为csv,它也会使它们保持打开状态 我已经试过了,但它仍然不起作用,我能做些什么来阻止它:(Excel 将工作簿另存为csv文件时创建过多工作簿,excel,vba,Excel,Vba,vba将复制一个范围-->创建一个新工作簿-->将其另存为csv,我设法访问了以下内容,但它打开了太多的工作簿,即使将它们另存为csv,它也会使它们保持打开状态 我已经试过了,但它仍然不起作用,我能做些什么来阻止它:( 您需要学习如何使用工作簿对象,这些对象在打开时设置好,以后可以用来关闭它们,而不是依赖于当时的活动。请参阅您是否尝试过wbNew.close而不是ActiveWorkbook.close@kiating是的,我尝试过使用wb.New.close,但它仍然打开工作簿,太多了,我认为
您需要学习如何使用工作簿对象,这些对象在打开时设置好,以后可以用来关闭它们,而不是依赖于当时的活动。请参阅您是否尝试过
wbNew.close
而不是ActiveWorkbook.close
@kiating是的,我尝试过使用wb.New.close,但它仍然打开工作簿,太多了,我认为问题在于,它打开一个新工作簿(xls),然后将其保存在csv中,而不是直接保存在csv中,因此它会保留xls中打开的工作簿,并将另一个工作簿保存为csv
Columns("A:F").Select
Selection.Copy
Workbooks.Add
ActiveSheet.Paste
Dim wbNew As Workbook
Dim strFileName As String
With ActiveSheet
strFileName = .Range("A2").Value
.Copy
End With
Set wbNew = ActiveWorkbook
wbNew.SaveAs ThisWorkbook.Path & "\" & strFileName, FileFormat:=xlCSV, CreateBackup:=False
Application.DisplayAlerts = False
ActiveWorkbook.Close
Workbooks("Paul_Automation_Project_Ver2.xlsm").Activate
Next
End Sub