python-自动篇-办公-案例-一键将word中的表格提取到excel文件中

文章目录

代码💚

python 复制代码
import os
from docx import Document
from openpyxl import Workbook

#获取待处理的文件的路径
path='word文件'  #文件所在文件夹
files = [path+"\\"+i for i in os.listdir(path)] #获取文件夹下的文件名,并拼接完整路径

for file in files:
    doc = Document(file)

    wb = Workbook()
    wb.remove(wb.worksheets[0])#删除工作簿自带的工作表
    for index, table in enumerate(doc.tables, start=1): #从1开始给表格编号
        ws = wb.create_sheet(f"Sheet{index}")#创建新工作表,以"Sheet" + word中表格的编号命名
        for i in range(len(table.rows)): #遍历word中表格的所有行
            row_data = [] #储存表格中每行的数据
            for j in range(len(table.columns)): #遍历word中表格的所有列
                row_data.append(table.cell(i,j).text)
            ws.append(row_data) #每取一行就写入数据到Excel表的行中
            
    wb.save("excel文件\\{}.xlsx".format(file.split("\\")[1].split(".")[0])) #保存excel文件

说明🐖

前提:您电脑上有python,还有就是编辑器vscode或其他

第一步:复制代码使用

第一:您复制代码到vscode运行,花现下面的报错,这时候需要pip按照对应的库

其实就是在:cmd中输入:pip install +对应报错需要的库,如上是docx

当然,也不会很顺利只使用"pip"就能解决,比如

使用pip时,出现红色报错啦

搜索报错信息

ERROR: Could not find a version that satisfies the requirement exceptions (from versions: none)

ERROR: No matching distribution found for exceptions

这个错误提示我输入了 exceptions,提示找不到这个包和它的版本号。但是不是有效信息

ModuleNotFoundError: No module named 'exceptions'

得出下面解决方案

第二步:将转换文档放到根目录

否则会出现下述报错

第三步:运行py

效果:

将word的表格内容:

通过py一键复制到excel中:


最终效果:

相关推荐
AC赳赳老秦10 小时前
程序员面试:OpenClaw生成面试题、模拟面试,高效备战面试
人工智能·python·机器学习·面试·职场和发展·deepseek·openclaw
qq_4138474010 小时前
html标签如何正确闭合_self-closing标签注意事项【介绍】
jvm·数据库·python
2501_9142459310 小时前
Go语言怎么做并发下载_Go语言多协程下载教程【技巧】
jvm·数据库·python
a95114164210 小时前
mysql如何创建安全的用户账户_mysql权限配置方法
jvm·数据库·python
qq_3729069310 小时前
Flask应用Python内存占用高怎么办_使用内存分析工具排查对象泄露
jvm·数据库·python
HHHHH1010HHHHH10 小时前
怎么在MongoDB中追踪一个Document的具体流转路径_从Chunk分布到迁移历史日志分析
jvm·数据库·python
InfinteJustice10 小时前
SQL窗口函数解决多维排名问题_组合排序实战
jvm·数据库·python
HHHHH1010HHHHH10 小时前
SymPy中正确处理含整数参数的三角函数定积分:避免n=0特例干扰结果
jvm·数据库·python
明月醉窗台11 小时前
Python-opencv批量处理文件夹中图像操作
开发语言·python·opencv
好家伙VCC11 小时前
**发散创新:用 Rust实现游戏日引擎核心模块——从事件驱动到多线程调度的实战
java·开发语言·python·游戏·rust