python,选择文件,按照配置文件config.ini中的sheet名称,将excelsheet复制到一个新的文件中,并保存在桌面
时间: 2023-05-15 11:08:03 浏览: 62
您可以使用Python中的openpyxl库来读取和复制Excel文件。以下是可能的解决方案:
```python
import os
import shutil
from openpyxl import load_workbook
# 读取配置文件
config_file = 'config.ini'
with open(config_file, 'r') as f:
sheet_name = f.read().strip()
# 选择要复制的Excel文件
excel_file = input('请输入要复制的Excel文件路径:')
# 加载Excel文件
wb = load_workbook(excel_file)
# 复制指定的sheet到新的Excel文件
new_wb = wb.copy_worksheet(wb[sheet_name])
# 保存新的Excel文件到桌面
desktop_path = os.path.join(os.path.expanduser('~'), 'Desktop')
new_file = os.path.join(desktop_path, 'new.xlsx')
new_wb.save(new_file)
# 提示复制完成
print('已将{}中的{} sheet复制到{}中'.format(excel_file, sheet_name, new_file))
```
请注意,此代码仅适用于Excel文件的第一个sheet。如果要复制其他sheet,请相应地更改代码。
相关问题
python,选择文件,按照配置文件config.ini中的sheet名称,将excel中对应的sheet复制到一个新的文件中,并保存在桌面
你可以使用Python中的openpyxl库来实现这个功能。首先,你需要安装openpyxl库,然后使用以下代码:
```python
import openpyxl
import os
# 读取配置文件
config = openpyxl.load_workbook('config.ini')
sheet_name = config['Sheet1']['SheetName'].value
# 读取Excel文件
file_path = input('请输入Excel文件路径:')
wb = openpyxl.load_workbook(file_path)
# 复制sheet到新文件
new_wb = openpyxl.Workbook()
new_wb.remove(new_wb.active)
new_wb.create_sheet(sheet_name)
for row in wb[sheet_name].rows:
new_wb[sheet_name].append([cell.value for cell in row])
# 保存新文件到桌面
desktop_path = os.path.join(os.path.expanduser("~"), "Desktop")
new_file_path = os.path.join(desktop_path, 'new_file.xlsx')
new_wb.save(new_file_path)
print('已保存到桌面:', new_file_path)
```
这段代码会先读取配置文件中的sheet名称,然后读取用户输入的Excel文件,复制指定的sheet到一个新的文件中,并保存在桌面上。
python,选择文件,将ini格式配置文件中的sheet名称,将sheet复制到一个新的文件中,并保存在桌面
您可以使用Python的openpyxl库来实现这个功能。以下是一个示例代码:
```python
import os
from openpyxl import load_workbook, Workbook
# 选择要复制的文件
file_path = input("请输入要复制的文件路径:")
wb = load_workbook(file_path)
# 选择要复制的sheet名称
sheet_name = input("请输入要复制的sheet名称:")
sheet = wb[sheet_name]
# 创建新的工作簿并复制sheet
new_wb = Workbook()
new_sheet = new_wb.active
new_sheet.title = sheet_name
for row in sheet.iter_rows():
values = [cell.value for cell in row]
new_sheet.append(values)
# 保存新的工作簿到桌面
desktop_path = os.path.join(os.path.expanduser("~"), "Desktop")
new_file_path = os.path.join(desktop_path, f"{sheet_name}.xlsx")
new_wb.save(new_file_path)
print(f"已将{sheet_name}复制到{new_file_path}")
```
您可以将上述代码保存为一个.py文件并运行,按照提示输入文件路径和sheet名称即可完成复制和保存。