鱼C论坛

 找回密码
 立即注册
查看: 2210|回复: 3

[已解决]Python+Excel自动化办公:A表格首行数据怎样插入文件夹B下面所有EXCEl表格中

[复制链接]
发表于 2023-12-6 18:45:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
Python+Excel自动化办公:A表格首行数据插入文件夹B下面所有EXCEl表格中的第二行并单独输出
最佳答案
2023-12-6 18:48:58
默宁爸爸 发表于 2023-12-06 18:48
A表格首行数据插入文件夹B下面所有EXCEl表格中的第二 ...

要将A表格首行数据插入文件夹B下所有Excel表格中的第二行并独立保存,可以使用Python的openpyxl库来操作Excel文件。首先,我们需要获取B文件夹下的所有Excel文件路径。可以使用os模块来实现:
  1. import os
  2. folder_path = 'B文件夹路径'
  3. excel_files = []
  4. for file_name in os.listdir(folder_path):
  5.     if file_name.endswith('.xlsx') or file_name.endswith('.xls'):
  6.         file_path = os.path.join(folder_path, file_name)
  7.         excel_files.append(file_path)
复制代码

然后,我们需要读取A表格的首行数据,然后将该数据插入到每个Excel表格中的第二行。可以使用openpyxl库来实现:
  1. from openpyxl import load_workbook
  2. # 读取A表格的首行数据
  3. a_file_path = 'A表格路径'
  4. a_workbook = load_workbook(a_file_path)
  5. a_sheet = a_workbook.active
  6. data_to_insert = [cell.value for cell in a_sheet[1]]
  7. # 遍历B文件夹下的所有Excel表格
  8. for file_path in excel_files:
  9.     workbook = load_workbook(file_path)
  10.     sheet = workbook.active
  11.    
  12.     # 插入A表格首行数据到第二行
  13.     sheet.insert_rows(2)
  14.     for col, value in enumerate(data_to_insert, start=1):
  15.         sheet.cell(row=2, column=col).value = value
  16.    
  17.     # 保存修改后的Excel到新的文件
  18.     new_file_path = file_path.replace('.xlsx', '_new.xlsx')
  19.     workbook.save(new_file_path)
复制代码

这样就可以将A表格首行数据插入到B文件夹下所有的Excel表格中的第二行,并将修改后的Excel另存为新的文件。每个Excel表格都会被单独保存,文件名会加上"_new"后缀。

以上回复来自 -- ChatGPT(FishC官方接口),如未能正确解答您的问题,请继续追问。

本帖被以下淘专辑推荐:

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-12-6 18:45:46 | 显示全部楼层
要实现将A表格首行数据插入文件夹B下所有Excel表格中的操作,可以使用Python的openpyxl库来读取和写入Excel文件。

首先,我们需要获取B文件夹下的所有Excel文件路径。可以使用os模块来实现:
  1. import os
  2. folder_path = 'B文件夹路径'
  3. excel_files = []
  4. for file_name in os.listdir(folder_path):
  5.     if file_name.endswith('.xlsx') or file_name.endswith('.xls'):
  6.         file_path = os.path.join(folder_path, file_name)
  7.         excel_files.append(file_path)
复制代码

然后,我们需要读取A表格的首行数据,然后将该数据插入到每个Excel表格中的第二行。可以使用openpyxl库来实现:
  1. from openpyxl import load_workbook
  2. # 读取A表格的首行数据
  3. a_file_path = 'A表格路径'
  4. a_workbook = load_workbook(a_file_path)
  5. a_sheet = a_workbook.active
  6. data_to_insert = [cell.value for cell in a_sheet[1]]
  7. # 遍历B文件夹下的所有Excel表格
  8. for file_path in excel_files:
  9.     workbook = load_workbook(file_path)
  10.     sheet = workbook.active
  11.     # 插入A表格首行数据到第二行
  12.     sheet.insert_rows(2)
  13.     for col, value in enumerate(data_to_insert, start=1):
  14.         sheet.cell(row=2, column=col).value = value
  15.     # 保存修改后的Excel
  16.     workbook.save(file_path)
复制代码

最后,如果你想单独输出插入的数据,可以在循环内部打印出来:
  1. for file_path in excel_files:
  2.     workbook = load_workbook(file_path)
  3.     sheet = workbook.active
  4.     # 插入A表格首行数据到第二行
  5.     sheet.insert_rows(2)
  6.     for col, value in enumerate(data_to_insert, start=1):
  7.         sheet.cell(row=2, column=col).value = value
  8.     # 输出插入的数据
  9.     print(f"插入的数据为:{', '.join(str(cell.value) for cell in sheet[2])}")
  10.     # 保存修改后的Excel
  11.     workbook.save(file_path)
复制代码

这样就可以实现将A表格首行数据插入B文件夹下所有Excel表格中,并单独输出插入的数据。

以上回复来自 -- ChatGPT(FishC官方接口),如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-12-6 18:48:18 | 显示全部楼层
A表格首行数据插入文件夹B下面所有EXCEl表格中的第二行并独立保存
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-12-6 18:48:58 | 显示全部楼层    本楼为最佳答案   
默宁爸爸 发表于 2023-12-06 18:48
A表格首行数据插入文件夹B下面所有EXCEl表格中的第二 ...

要将A表格首行数据插入文件夹B下所有Excel表格中的第二行并独立保存,可以使用Python的openpyxl库来操作Excel文件。首先,我们需要获取B文件夹下的所有Excel文件路径。可以使用os模块来实现:
  1. import os
  2. folder_path = 'B文件夹路径'
  3. excel_files = []
  4. for file_name in os.listdir(folder_path):
  5.     if file_name.endswith('.xlsx') or file_name.endswith('.xls'):
  6.         file_path = os.path.join(folder_path, file_name)
  7.         excel_files.append(file_path)
复制代码

然后,我们需要读取A表格的首行数据,然后将该数据插入到每个Excel表格中的第二行。可以使用openpyxl库来实现:
  1. from openpyxl import load_workbook
  2. # 读取A表格的首行数据
  3. a_file_path = 'A表格路径'
  4. a_workbook = load_workbook(a_file_path)
  5. a_sheet = a_workbook.active
  6. data_to_insert = [cell.value for cell in a_sheet[1]]
  7. # 遍历B文件夹下的所有Excel表格
  8. for file_path in excel_files:
  9.     workbook = load_workbook(file_path)
  10.     sheet = workbook.active
  11.    
  12.     # 插入A表格首行数据到第二行
  13.     sheet.insert_rows(2)
  14.     for col, value in enumerate(data_to_insert, start=1):
  15.         sheet.cell(row=2, column=col).value = value
  16.    
  17.     # 保存修改后的Excel到新的文件
  18.     new_file_path = file_path.replace('.xlsx', '_new.xlsx')
  19.     workbook.save(new_file_path)
复制代码

这样就可以将A表格首行数据插入到B文件夹下所有的Excel表格中的第二行,并将修改后的Excel另存为新的文件。每个Excel表格都会被单独保存,文件名会加上"_new"后缀。

以上回复来自 -- ChatGPT(FishC官方接口),如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-24 04:43

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表