利用python脚本批量替换当前目录下所有excle表格中特定的单元格内容

利用python脚本批量替换当前目录下所有excle表格中特定的单元格内容


# 导入os模块,用于文件和目录操作  
import os    
  
# 导入openpyxl库中的load_workbook函数,用于加载Excel文件  
from openpyxl import load_workbook    
  
# 定义一个函数replace_cell_content,用于替换Excel文件中特定单元格的内容  
def replace_cell_content(file_path, cell_position, new_content):    
    # 加载指定的Excel文件  
    wb = load_workbook(filename=file_path)    
  
    # 获取工作簿中的第一个sheet(活动sheet),无论其名称是什么  
    # wb.active是一个属性,它返回工作簿中当前激活的sheet  
    sheet = wb.active  # 这将选择第一个sheet,无论其名称是什么    
  
    # 将指定单元格的内容替换为新的内容  
    # sheet[cell_position]表示sheet中的特定单元格,例如'D4'  
    sheet[cell_position] = new_content    
  
    # 保存修改后的工作簿  
    wb.save(file_path)    
  
# 定义一个函数replace_all_excel_files_in_directory,用于遍历指定目录中的所有Excel文件,并替换其中的内容  
def replace_all_excel_files_in_directory(directory, cell_position='D4', new_content='xxxxxx'):    
    # 遍历指定目录中的所有文件  
    for filename in os.listdir(directory):    
        # 如果文件名以.xlsx结尾,并且不是Excel的临时文件(通常以~$开头)  
        if filename.endswith('.xlsx') and not filename.startswith('~$'):    
            # 构建文件的完整路径  
            file_path = os.path.join(directory, filename)    
  
            # 调用replace_cell_content函数,替换该Excel文件中特定单元格的内容  
            replace_cell_content(file_path, cell_position, new_content)    
  
            # 打印已替换的文件路径  
            print(f"已替换文件: {file_path}")    
  
# 使用当前工作目录作为目标目录  
# 调用replace_all_excel_files_in_directory函数,替换该目录下所有Excel文件中特定单元格的内容  
replace_all_excel_files_in_directory(os.getcwd())

 

posted @ 2024-05-16 17:07  hkgan  阅读(6)  评论(0编辑  收藏  举报