簡體   English   中英

Excel宏關閉所有打開的工作簿

[英]Excel macro to close all open workbooks

我有一個像這樣的宏代碼

 Do Until MyFileName = ""
    Workbooks.Open Filename:=MyPath & MyFileName
    ActiveWorkbook.SaveAs Filename:=Left(MyFileName, InStr(1, MyFileName, ".xls") - 1), FileFormat:=xlCSV, CreateBackup:=False
    ActiveWorkbooks.CloseSaveChanges:=TRUE
    MyFileName = Dir
Loop

它的工作正常,但在轉換為csv時文件正在打開。 我想關閉文件並保存更改是正確的。 請幫我。

將新名稱保存在變量中,然后使用Workbook("name").close(true)

Dim wbName As String

Do Until MyFileName = ""
    Workbooks.Open Filename:=MyPath & MyFileName
    wbName = Left(MyFileName, InStr(1, MyFileName, ".xls") - 1)

    ActiveWorkbook.SaveAs Filename:=wbName, FileFormat:=xlCSV, CreateBackup:=False
    Workbooks(wbName).Close (True)
    ActiveWorkbooks.Close SaveChanges:=True
    MyFileName = Dir
Loop
End Sub

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM