作者lphotoimpact (楓)
看板Office
標題[問題] VBA 將XLS轉CSV後,想同步改Sheet名稱
時間Fri Jul 27 13:09:58 2018
(若是和其他不同軟體互動之問題 請記得一併填寫)
軟體:excel
版本:2016
各位好,初入VBSA
參考版上的批量xls轉csv
做了一些修改
因為轉存的csv會依照原本xls檔名來取sheet名稱
能否轉出csv時,sheet的名稱想同步取名為"sheet0"
或者是能夠依照原本xls的sheet名稱同步移植過去?
Option Explicit
Sub Ex()
Dim xlpath As String, xlfile As String
Dim xlpathout As String
xlpath = "D:\研4\" '要轉檔路徑
xlpathout = xlpath & "csv\" '轉檔儲存路徑
MkDir xlpath & "csv\" '創轉檔存的資料夾
xlfile = Dir(xlpath & "*.xls")
Do While xlfile <> ""
With Workbooks.Open(xlpath & xlfile)
.SaveAs Filename:=xlpathout & Replace(xlfile, "xls", ".csv"),
FileFormat:=xlCSV
.Close SaveChanges:=True '關閉 檔案 ,存檔
End With
xlfile = Dir
Loop
End Sub
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.128.67.236
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Office/M.1532668200.A.0C3.html
1F:→ soyoso: csv為文字檔並無非worksheet,從excel內讀取會以檔名,就 07/27 13:26
2F:→ soyoso: 算更名存檔再開啟也會回復為檔名 07/27 13:27
3F:→ soyoso: 如需要原工作表名稱出現的話,應可於xlfile後連接&原工作 07/27 13:29
4F:→ soyoso: 名稱或直接以原工作名稱做為命名 07/27 13:29
5F:→ lphotoimpact: 了解了,非常感謝,我後來發現不需更名sheet 07/27 13:35