0
我在將excel轉換爲csv文件時遇到問題。我的用例是編寫一個宏,將每個工作簿工作表轉換爲csv文件並將它們壓縮爲一個文件。 所以我的代碼是這樣 「OriginalWorkbook.Activate 」對於張數轉換每個到它自己的CSV文件Excel宏從工作簿窗體中創建csv文件窗口彈出問題
For Counter = SHCOUNT + 1 To Sheets.Count
'Export as CSV to the root folder
Set wks = ActiveWorkbook.Worksheets(Counter)
wks.Copy 'to a new workbook
Set newWks = ActiveSheet
With newWks
fileSaveName = Application.GetSaveAsFilename(newWks.Name, _
fileFilter:="CSV Files (*.csv), *.csv")
'ActiveWorkbook.SaveAs (fileSaveName)
.SaveAs Filename:=fileSaveName, FileFormat:=xlCSV
ZipNAme = newWks.Name
If fileSaveName <> False Then
'newWks.Delete
'MsgBox "Save as " & fileSaveName
End If
.Parent.Close Savechanges:=False
End With
''Add the created CSV file to the ZIP file
Set oapp = CreateObject("Shell.Application")
oapp.Namespace(FolderName).CopyHere fileSaveName
Next Counter
但現在我面臨的問題與此代碼,我有一些20張Excel和每張紙,窗口saveas彈出即將到來,我點擊20次保存完成這件事。
我對VB中的編碼非常陌生。任何人都可以幫我解決這個問題嗎? 我不得不繼續彈出,因爲我事先給出了文件名。
感謝, B1
因爲您正在循環中調用'Application.GetSaveAsFilename',所以您將獲得每個文件的彈出窗口! –
有沒有其他方法?或爲此解決方案? –