python - 将 .txt 导入现有 excel 到新工作表
问题描述
我完全被我正在做的小项目所困扰。我每月一次将 .txt 文件中的数据导入现有的 excel 中。每次我这样做时,我想在 Excel 中创建一个新工作表并将数据添加到其中,而不更改其他工作表中的任何内容。我的方法看起来像这样。
from datetime import date, timedelta
import pandas as pd
import numpy as np
import openpyxl
from openpyxl import load_workbook
import os
now = date.today()
last_month = now.month-1 if now.month > 1 else 12
last_year = now.year - 1
if last_month != 1:
filename = "0" + str(last_month) + "." + str(now.year) + ".txt"
else:
filename = "12" + "." + str(last_year) + ".txt"
print(filename)
writer = pd.ExcelWriter("Ausgabenliste.xlsx", engine='openpyxl')
if os.path.exists("Ausgabenliste.xlsx"):
book = openpyxl.load_workbook("Ausgabenliste.xlsx")
writer.book = book
df = pd.read_csv(filename, sep=" ")
df.to_excel(writer, sheet_name=filename)
writer.save()
writer.close()
谢谢您的帮助。对此,我真的非常感激。
解决方案
这会在现有 XLSX 中添加一个新工作表:
# Load existing
book = load_workbook('x.xlsx')
writer = pd.ExcelWriter('x.xlsx', engine = 'openpyxl')
# Starting with the existing worksheets
writer.book = book
# Adding a new worksheet
df.to_excel(writer, sheet_name='gtomer')
writer.save()
推荐阅读
- angularjs - 是否可以选择这个 ng-repeat 块的第一个元素?
- javascript - 字符串和数字之间的Javascript类型转换导致结果不一致
- amazon-web-services - 实例平均 CPU 利用率未显示,但其他所有内容都显示了吗?
- laravel - 如何为 Laravel 8 中生成的 S3 Presigned Url 分配文件大小和文件类型约束
- python - 如何使用 pandas.styler 格式化索引文本数据
- ibm-cloud - Watson Assistant 对话开始不起作用
- html - 如何定位具有焦点状态的锚标签?
- android - Android Studio 代码完成不再起作用
- python - 不同字典的Python排序列表
- php - 带有 Sanctum 401 未授权错误的 Laravel Vue SPA