办公室大神级骚操作:Python控制Excel实现自动化办公

办公室里秀一把!用Python控制Excel实现自动化办公!附学习教程 1.安装 2.操作一个简单的Excel文档 操作注释及代码: 操作完成后,数据存储结果如下: 3. 操作简单Excel文档并添加数据格式 操作代码如下:附带数据格式的定义 操作效果如图所示: 4.Excel中添加不同类型的数据 操作代码如下:将不同的数据按照指定的格式添加到文件中 代码执行结果如下: 注意:xlsxwriter中提供了向excel中写... 阅读详情

很多做文员的小姐姐一直在说做报表好麻烦呀,但一直找不到一个合适的报表工具,这不… 思来想去,感觉 Excel 就一定程度上能做可视化的, 除了不能动态交互外, 其他都挺好.。今天分享的就是一个关于如何用 Python来自动化Excel 报表, 解放双手, 提高工作效率。

总体解决方案
在这里插入图片描述
输出报表
当然是测试用的假数据啦。
在这里插入图片描述
自动化Py脚本

基本思路:

  1. 准备模板数据需要的 SQL
  2. 用 Pandas 连接 数据库 并执行 SQL, 返回 DataFrame
  3. 用 Xlwings 直接打开 Excel, 并将这些 DataFrame 填充到写死的单元格
  4. 保存并退出

具体代码如下呀:

import pandas as pd 
import xlwings as xw
import pymssql


# 各品类月同期 
def get_last_year_sale(start_date, end_date):
    """各品类同期销量, 对比19年"""
    sql_01 = f"""
    SELECT 
      品类
      , SUM(数量) AS QTY
    FROM XXX
    WHERE 是否电商 = 1 
      AND 销售时间 BETWEEN DATEADD(YEAR, -2, '{start_date}') AND DATEADD(YEAR, -2, '{end_date}')     
    GROUP BY 品类
    """
    df = pd.read_sql(sql_01, con=con)
    df_xtc = df[df['品类'] == 'A品类'][['品类', 'QTY']]
    df_bbk = df[df['品类'] == 'B品类'][['品类', 'QTY']]
    return df_xtc, df_bbk 
    
def get_anget_sale(start_date, end_date):
        """返回各品类, 各区域的时间段销量"""
        sql = f"""
        SELECT 
          品类
          , AGENT
          , SUM(数量) AS QTY
          , ROW_NUMBER()OVER(PARTITION BY 品类 ORDER BY SUM(数量) DESC) MY_RANK
        FROM XXX
        WHERE 是否电商 = 1 
          AND 销售时间 BETWEEN '{start_date}' AND '{end_date}'
        GROUP BY AGENT, 品类
        """
        df = pd.read_sql(sql, con=con)
        df_xtc = df[df['品类'] == 'A品类'][['AGENT', 'QTY']
Python办公自动化实战:3小时掌握Excel/Word/PPT/邮件批量处理 办公自动化是提升工作效率、将人力从重复性劳动中解放出来的关键技术。其核心原理是通过编程脚本模拟人工操作,实现对文档、数据和流程的批量、规则化处理。在技术价值层面,自动化不仅能将处理速度提升百倍,还能确保输出的准确性与一致性,有效避免人为错误。应用场景广泛覆盖行政、财务、运营、数据分析等多个岗位,常用于Excel数据透视与报表生成、Word文档批量创建与填充、PPT模板化制作以及邮件智能发送与监控等具体任务。本文聚焦Python这一主流工具,通过openpyxl、pandas、python-docx等核心库, 阅读详情

相关推荐

IC618新手避坑指南:从零在Linux上配置Cadence Virtuoso环境(含cds.lib文件详解)

本文详细介绍了在Linux系统上配置Cadence Virtuoso IC618环境的完整指南,特别针对新手常见问题提供解决方案。重点解析了cds.lib文件的关键配置,包括库路径定义和工艺库管理,并分享了高效工作流设置和典型问题排查技巧,帮助工程师快速搭建稳定的EDA设计环境。

weixin_26805597的博客 551

国密USB Key开发实战:SKF库调用全流程解析(附代码示例)

本文详细解析了国密USB Key开发中SKF库的调用全流程,涵盖从设备枚举、应用容器遍历到数字签名与验证的核心步骤。通过实战代码示例,深入探讨了SKF库的层次化模型、SM2签名实现细节以及纯软件验签方案,为开发电子签章、安全登录等合规应用提供了一套完整的调用开发指南。

oo7890的博客 524

深入解析π型滤波电路:RC与LC滤波器的实战选型指南

本文深入解析了π型滤波电路的工作原理与实战选型。重点对比了RC型与LC型滤波器的核心差异:RC型成本低、体积小,但存在压降与能耗,适用于小电流场景;LC型效率高、滤波性能好,但成本与体积较大,适合中到大电流及高纹波抑制需求。文章提供了基于不同应用场景的选型指南与设计要点,帮助工程师做出精准决策。

weixin_29291069的博客 654

【Aseprite】制作Unity2D瓦片地图素材(平台游戏)

本文章用于记录用Aseprite软件制作2D平台游戏的瓦片地图的方法。

凡心所向,素履以往 5543

FANUC机器人PROFINET通讯方式组态

6 然后对模块进行命名及更改IP地址,点击“Network Detection”,进行扫描,会生成下图,双击商科模块会生成下边的对话框,对模块进行命名及更改IP地址,在“Permanent Name”处点对勾,完成后点击“Apply Name及Apply”进行命名。此处注意,上图左上在线在不了,网络扫描处上面也灰色的,扫描不了。5双击abcc-prt-2-port RT(FW1.13),生成下面图标,在右边点击1、2把原来内容删掉,从新在左侧加载 ,使1、2是输出,3、4为输入,完成后点击OK。

dxs93的博客 8427

Vibe coding 氛围编程:编程就像聊天一样,低代码开发时代来了?

Vibe coding:编程就像聊天一样,低代码开发时代来了!

Code_流苏:在代码中寻诗意,在实践中觅真知 4802

ZYNQ系列PS侧和PL侧DDR3或DDR4在AD(Altium Designer 25)中的layout布线规则约束

DDR3或DDR4的PCB布线规则通常有相对固定的要求,对应的,在PCB设计时有固定的约束设置。

FPGA艺术家的博客 786

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

上一篇: 递归解法:让程序员的代码更优雅,正经人谁用递归呀!
下一篇: Python爬虫解析网页的3种方式,值得收藏
克金森沐沐
博客等级 码龄6年 694粉丝 64原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值