【发布时间】:2016-01-28 12:22:04
【问题描述】:
我正在尝试使用 vba 宏或 python 代码将 xlsx 文件转换为 xls。到目前为止,我可以使用以下代码在单个文件夹中转换文件方面获得一些帮助:
Sub ProcessFiles()
Dim Filename, Pathname, saveFileName As String
Dim wb As Workbook
Dim initialDisplayAlerts As Boolean
Pathname = ""
Filename = Dir(Pathname & "*.xlsx")
initialDisplayAlerts = Application.DisplayAlerts
Application.DisplayAlerts = False
Do While Filename <> ""
Set wb = Workbooks.Open(Filename:=Pathname & Filename, _
UpdateLinks:=False)
wb.CheckCompatibility = False
saveFileName = Replace(Filename, ".xlsx", ".xls")
wb.SaveAs Filename:=Pathname & saveFileName, _
FileFormat:=xlExcel8, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
wb.Close SaveChanges:=False
Filename = Dir()
Loop
Application.DisplayAlerts = initialDisplayAlerts
End Sub
我现在正在尝试将其推广到给定文件夹中的所有子文件夹。
更重要的是,我正在尝试构建一个执行以下操作的宏:
- 在父文件夹不变的批处理模式下运行。
- 在后台处理代码并将所有转换后的文件放在相应的文件夹中。
例如,Max 是我的主文件夹,里面可能有 Med ,Det,Vis,Liv 子文件夹。在每个子文件夹中,将有数千个 xlsx 文件需要转换并放置在同一位置父文件已存储。
请帮忙。
谢谢, 麦迪
【问题讨论】:
-
请针对每个问题提出一个 具体问题。例如。 “如何在 excel-vba 中递归枚举 xlsx 文件”,“如何在 excel-vba 中获取用户输入”。每个问题只要求 一种 编程语言。
-
嗨,凯..按建议更改。