盘点一个Python自动化办公需求——把指定sheet文件数据插入到word指定位置

共 3285字,需浏览 7分钟

 ·

2024-06-28 09:51

点击上方“Python爬虫与数据挖掘”,进行关注

回复“书籍”即可获赠Python从入门到进阶共10本电子书

红豆生南国,春来发几枝。

大家好,我是Python进阶者。

一、前言

前几天在Python最强王者交流群【哎呦喂  是豆子~】问了一个Python自动化办公的问题,问题如下:大佬们 有没有什么案例可以参考的呀  要把指定sheet文件数据插入到word指定位置  但是数据插入是不带格式框线的  直接就只有文字插入进去  然后网上和ai的教程无法实现我要的效果

代码如下:

from docxtpl import DocxTemplate
import pandas as pd
df = pd.read_clipboard()
"""
到期日 收款账号 打款额
350,000.00 NaN 15265838740016
100,000.00 2023/07/06 15265838740016
60,000.00 2023/08/13 15265838740016
270,000.00 2023/09/10 15265838740016
"
""
context = {
        "table": df,
    }
docx = DocxTemplate('报告-模板.docx')
   # 把键值对所对应的值赋予给键 render 赋予的意思
docx.render(context)
docx.save(r"报告-更新.docx")

二、实现过程

这里【莫生气】给了个他自己的自动化办公案例,可能对于问题解决并没有太大的参考价值,毕竟是两个不同的需求。

后来【隔壁😼山楂】逆向思路,直接修改了word模版,然后还是沿用粉丝的代码,顺利地解决了需求。

优化后的代码如下:

from docxtpl import DocxTemplate

tpl = DocxTemplate('templates/dynamic_table_tpl.docx')

context = {
    'col_labels': ['fruit''vegetable''stone''thing'],
    'tbl_contents': [
        {'label''yellow''cols': ['banana''capsicum''pyrite''taxi']},
        {'label''red''cols': ['apple''tomato''cinnabar''doubledecker']},
        {'label''green''cols': ['guava''cucumber''aventurine''card']},
    ],
}

tpl.render(context)
tpl.save('output/dynamic_table.docx')

顺利地解决了粉丝的问题,给粉丝节约了时间、金钱和精力,非常奈斯。这个宝藏群,大家值得加入!

如果你也有类似这种Python相关的小问题,欢迎随时来交流群学习交流哦,有问必答!

三、总结

大家好,我是Python进阶者。这篇文章主要盘点了一个Python自动化办公的问题,文中针对该问题,给出了具体的解析和代码实现,帮助粉丝顺利解决了问题。

最后感谢粉丝【哎呦喂  是豆子~】提出的问题,感谢【隔壁😼山楂】给出的思路,感谢【莫生气】等人参与学习交流。

【提问补充】温馨提示,大家在群里提问的时候。可以注意下面几点:如果涉及到大文件数据,可以数据脱敏后,发点demo数据来(小文件的意思),然后贴点代码(可以复制的那种),记得发报错截图(截全)。代码不多的话,直接发代码文字即可,代码超过50行这样的话,发个.py文件就行。

大家在学习过程中如果有遇到问题,欢迎随时联系我解决(我的微信:pdcfighting1),应粉丝要求,我创建了一些高质量的Python付费学习交流群和付费接单群,欢迎大家加入我的Python学习交流群和接单群!

小伙伴们,快快用实践一下吧!如果在学习过程中,有遇到任何问题,欢迎加我好友,我拉你进Python学习交流群共同探讨学习。

------------------- End -------------------

往期精彩文章推荐:

欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持

想加入Python学习群请在后台回复【入群

万水千山总是情,点个【在看】行不行

/今日留言主题/

随便说一两句吧~~

浏览 53
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报