鱼C论坛

 找回密码
 立即注册
查看: 1302|回复: 6

python如何实现excel表格筛选,然后并插入筛选后的表格

[复制链接]
发表于 2021-9-14 14:00:15 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
最近工作有这样一个需求:
需要从原始的excel表格中,筛选出对应分公司的数据,然后把部分筛选后的数据插入在word指定的区域;
20210914135830.png
需要筛选的图片.png

怎么实现了,头都大了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-9-14 14:11:39 | 显示全部楼层

回帖奖励 +2 鱼币

路过了哦  
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-9-14 15:22:48 | 显示全部楼层
目前进度用pands读取到了数据,但是接下来做数据的写入到word遇到了问题,没找到好的解决方法
import pandas as pd

路径=r'8新新增的分公司分局表格.xlsx'
数据=pd.read_excel(路径,index_col='分公司')
print(数据.loc['忠县'])
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-14 19:04:32 | 显示全部楼层
一坨屎吖 发表于 2021-9-14 15:22
目前进度用pands读取到了数据,但是接下来做数据的写入到word遇到了问题,没找到好的解决方法

可以去了解一下 python-docx
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-9-15 10:28:05 | 显示全部楼层
阿奇_o 发表于 2021-9-14 19:04
可以去了解一下 python-docx

嗯嗯,正在学习这个库
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-15 13:01:14 | 显示全部楼层
关键在应用
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-9-15 21:29:29 | 显示全部楼层
阿奇_o 发表于 2021-9-14 19:04
可以去了解一下 python-docx
import pandas as pd
from docxtpl import DocxTemplate
from docx.enum.table import WD_TABLE_ALIGNMENT # 导入表格对齐方式
from docx.shared import Cm # 导入单位转换函数
from docx.oxml.ns import qn # 中文字体
from docx import Document
路径=r'8新新增的分公司分局表格.xlsx'
原始数据=pd.read_excel(路径,index_col='分公司')
# print(数据)
文件 = DocxTemplate(r'报告模板 - 副本.docx')
需要的列表数据=原始数据.loc['璧山'].values.tolist()  #需要的列表数据 无表头,需要额外添加
print(需要的列表数据)
行=len(需要的列表数据)
列=len(需要的列表数据[0])
# print((列))
表 = 文件.add_table(行+1, 列, style="Table Grid")
表.alignment = WD_TABLE_ALIGNMENT.CENTER # 设置表格为对齐
表头列表=['分局','5G竞有我无基站数量']
# 录入表头数据
for 表头列 in range(列):
    表.cell(0, 表头列).text = 表头列表[表头列]  # ['分局','5G竞有我无基站数量']里面的第几个
# 录入数据
for 行 in range(行):
    # print(行)
    for 列真实值 in range(列): # 遍历列
        # print(列真实值)
        # print(需要的列表数据[行][列])
        表.cell(行+1, 列真实值).text=str(需要的列表数据[行][列真实值]) # 数据中每一行是一个列表,每一列是一个元素  失败了
        print(表.cell(行+1, 列真实值).text)

文件.save(r'13.docx')

我先用pandas读取出来,然后筛选插入表格也实现了,但是不能插入到指定的段落中,我看了下全部插入在段尾
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-7 10:22

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表