在保存文件中,如果子表存在覆盖原子表
时间: 2024-03-15 22:44:11 浏览: 22
好的,我对代码进行了修改,实现了在保存文件中,如果子表存在则覆盖原子表的需求,如下所示:
```python
import pandas as pd
# 定义需要筛选的场地代码
site_codes = ["871W", "871WA", "872WW", "871WH", "871VH", "871RA", "872R", "088VA", "691VA", "692VA", "870VA", "873VA", "874VA", "875VA", "876VA", "878VA", "879VA"]
# 定义Excel文件名和子表名
file = "计划及效能场地监控日报表.xlsx"
sheet_name = "效能数据"
try:
# 读取 Excel 文件并筛选需要的列和行
df = pd.read_excel(file, usecols=["日期", "场地代码", "含派件流转量(件)", "出勤人员折算"])
# 判断场地代码是否在需要筛选的场地代码列表中,如果不在,则进行删除操作
for code in df["场地代码"]:
if code not in site_codes:
df.drop(df[df["场地代码"] == code].index, inplace=True)
# 设置样式
styled_df = df.style \
.set_properties(**{'text-align': 'center'}) \
.set_table_styles([{'selector': 'td', 'props': [('min-width', '50px')]}]) \
.set_table_attributes('border="1" cellspacing="0" cellpadding="4"')
# 保存为 Excel 文件,并指定子表的名称
with pd.ExcelWriter("场地效益看板.xlsx", engine='openpyxl', mode='a') as writer:
try:
# 如果子表存在,则覆盖原子表
writer.book[sheet_name]
writer.sheets = {ws.title:ws for ws in writer.book.worksheets}
except KeyError:
pass
styled_df.to_excel(writer, sheet_name=sheet_name, index=False)
print("完成清洗")
except Exception as e:
print("发生了异常:", e)
```
上述代码在保存文件时,先判断子表是否存在,如果存在则进行覆盖操作,如果不存在则直接保存新子表。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)