python代码只用pywin32库,把文件夹及其子文件夹里所有xlsm格式文件另存为xlsx格式文件,并删除原文件,再将这些文件重新分类存放
时间: 2024-12-19 22:17:53 浏览: 3
在Python中,你可以使用pywin32库来处理Windows文件系统,包括读取xlsm文件,将其转换为xlsx,然后删除原始文件并整理归档。下面是一个简单的示例代码片段,但它并未包括递归遍历子目录、分类存储等功能,你需要根据实际需求进行调整:
```python
import os
import win32com.client as win32
# 定义转换函数
def convert_xlsm_to_xlsx(xlsm_path):
# 使用Excel应用对象打开xlsm文件
app = win32.gencache.EnsureDispatch('Excel.Application')
workbook = app.Workbooks.Open(xlsm_path)
# 将文件另存为xlsx格式
xlsx_path = xlsm_path[:-5] + 'xlsx'
workbook.SaveAs(xlsx_path)
workbook.Close()
app.Quit()
# 删除原始xlsm文件
os.remove(xlsm_path)
# 指定源文件夹路径
source_folder = r"C:\YourSourceFolder"
# 遍历源文件夹及其子文件夹
for root, dirs, files in os.walk(source_folder):
for file in files:
if file.endswith(".xlsm"):
# 调用转换函数
convert_xlsm_to_xlsx(os.path.join(root, file))
# 这里只是一个基础示例,关于文件分类存储的部分,你需要根据业务规则自定义一个函数,例如按照日期、类别等属性对文件进行移动或复制到特定的目标文件夹中。
#
阅读全文