ppt提取文字到word的代码(多种代码可选)

6 篇文章 0 订阅
订阅专栏
文章提供了几个VBA代码示例,详细说明了如何在PowerPoint中启用开发工具,然后通过编写代码将幻灯片中的文本(包括表格内容)提取到Word文档中。尽管某些代码可能导致错误,但它们展示了自动化文档处理的方法。
摘要由CSDN通过智能技术生成

步骤有空再写

一、步骤

  1. 开启ppt中开发工具(如果选项卡中显示就跳过)
    点击文件——更多——选项——自定义功能区——勾选开发工具
    在这里插入图片描述
    在这里插入图片描述
  2. 按步骤进入,填入代码,代码在下一节。

开发者工具——查看代码——工具——引用。
在这里插入图片描述

找到Microsoft Word 开头的选项,勾选,确定。
在这里插入图片描述

插入——模块。在弹出的窗口填入代码,最后在插入选项卡下面找到绿色三角,点击即可运行代码。
在这里插入图片描述

二、代码

根据需要选其中一种就行。

1.提取文字到指定的文档,没有则新建。不能提取表格文字
Sub ExtractTextToWordDoc()
  Dim objPresentation As Presentation
  Dim objSlide As Slide
  Dim objShape As Shape
  Dim objTextFrame As TextFrame
  Dim objTextRange As TextRange
  Dim strOutput As String
  Dim objWord As Object
  Dim objDoc As Object

  Set objPresentation = ActivePresentation
  Set objWord = CreateObject("Word.Application")
  Set objDoc = objWord.Documents.Add

  For Each objSlide In objPresentation.Slides
    For Each objShape In objSlide.Shapes
      If objShape.HasTextFrame Then
        Set objTextFrame = objShape.TextFrame
        Set objTextRange = objTextFrame.TextRange
        strOutput = strOutput & objTextRange.Text & vbCrLf
      End If
    Next
  Next

  objDoc.Range.InsertAfter strOutput
  objDoc.SaveAs "C:\Output.docx"
  objDoc.Close
  objWord.Quit

  MsgBox "文本提取已完成!"
End Sub

2.会到开一个新文档,不能提取表格文字
Sub ExtractText()
Dim pptSlide As Slide
Dim pptShape As Shape
Dim wordApp As Object
Dim wordDoc As Object
Dim text As String
Set wordApp = CreateObject("Word.Application")
wordApp.Visible = True
Set wordDoc = wordApp.Documents.Add()
For Each pptSlide In ActivePresentation.Slides
For Each pptShape In pptSlide.Shapes
If pptShape.HasTextFrame Then
text = pptShape.TextFrame.TextRange.text
wordDoc.Range.InsertAfter text
End If
Next pptShape
Next pptSlide
End Sub

3.会到开一个新文档,能提取表格文字,但表格中的文字会乱。
Sub ExtractText()
Dim pptSlide As Slide
Dim pptShape As Shape
Dim pptTable As Table
Dim wordApp As Object
Dim wordDoc As Object
Dim text As String
Set wordApp = CreateObject("Word.Application")
wordApp.Visible = True
Set wordDoc = wordApp.Documents.Add()
For Each pptSlide In ActivePresentation.Slides
For Each pptShape In pptSlide.Shapes
If pptShape.HasTable Then ' 检查pptShape是否是Table
Set pptTable = pptShape.Table ' 将pptShape强制转换为表格对象
For i = 1 To pptTable.Rows.Count
For j = 1 To pptTable.Columns.Count
text = pptTable.Cell(i, j).Shape.TextFrame.TextRange.text
wordDoc.Range.InsertAfter text
wordDoc.Range.InsertAfter " " ' 用空格分隔每个单元格中的文字
Next j
Next i
ElseIf pptShape.HasTextFrame Then
text = pptShape.TextFrame.TextRange.text
wordDoc.Range.InsertAfter text
End If
Next pptShape
Next pptSlide
End Sub
4.文字也能提取,但我运行后显示错误

一下代码可以逐一尝试,但不保证可以顺利运行,我的报错如图。这些方法也是搜来的,我也不懂vbs。如果有懂得的大佬可以说说,感谢😋

报错信息

  1. 第一种
Sub ExtractText()
Dim pptSlide As Slide
Dim pptShape As Shape
Dim pptTable As Table
Dim wordApp As Object
Dim wordDoc As Object
Dim text As String
Set wordApp = CreateObject("Word.Application")
wordApp.Visible = True
Set wordDoc = wordApp.Documents.Add()
For Each pptSlide In ActivePresentation.Slides
For Each pptShape In pptSlide.Shapes
If pptShape.HasTable Then
Set pptTable = pptShape.Table
For i = 1 To pptTable.Rows.Count
For j = 1 To pptTable.Columns.Count
text = pptTable.Cell(i, j).Shape.TextFrame.TextRange.Text
wordDoc.Tables.Add wordDoc.Range, 1, 1 ' 在Word文档中插入一个表格
wordDoc.Tables(1).Cell(i, j).Range.Text = text ' 将单元格中的文字插入到新表格中
Next j
Next i
ElseIf pptShape.HasTextFrame Then
text = pptShape.TextFrame.TextRange.Text
wordDoc.Range.InsertAfter text
End If
Next pptShape
Next pptSlide
End Sub
  1. 第二种
Sub ExtractText()
Dim pptSlide As Slide
Dim pptShape As Shape
Dim pptTable As Table
Dim wordApp As Object
Dim wordDoc As Object
Dim text As String
Set wordApp = CreateObject("Word.Application")
wordApp.Visible = True
Set wordDoc = wordApp.Documents.Add()
For Each pptSlide In ActivePresentation.Slides
For Each pptShape In pptSlide.Shapes
If pptShape.HasTable Then
Set pptTable = pptShape.Table
Dim new_table As Table
Set new_table = wordDoc.Tables.Add(wordDoc.Range, pptTable.Rows.Count, pptTable.Columns.Count) ' 在 Word 文档中添加新表格
For i = 1 To pptTable.Rows.Count
For j = 1 To pptTable.Columns.Count
text = pptTable.Cell(i, j).Shape.TextFrame.TextRange.Text
new_table.Cell(i, j).Range.Text = text ' 将单元格中的文字插入到新表格中
Next j
Next i
ElseIf pptShape.HasTextFrame Then
text = pptShape.TextFrame.TextRange.Text
wordDoc.Range.InsertAfter text
End If
Next pptShape
Next pptSlide
End Sub
  1. 第三种
Sub ExtractText()
Dim pptSlide As Slide
Dim pptShape As Shape
Dim pptTable As Table
Dim wordApp As Object
Dim wordDoc As Object
Dim text As String
Set wordApp = CreateObject("Word.Application")
wordApp.Visible = True
Set wordDoc = wordApp.Documents.Add()
For Each pptSlide In ActivePresentation.Slides
    For Each pptShape In pptSlide.Shapes
        If pptShape.HasTable Then
            Set pptTable = pptShape.Table
            Dim new_table As Table
            Set new_table = wordDoc.Tables.Add(wordDoc.Range(), pptTable.Rows.Count, pptTable.Columns.Count)
            For Each row In pptTable.Rows
                For Each column In pptTable.Columns
                    text = pptTable.Cell(row.Index, column.Index).Shape.TextFrame.TextRange.Text
                    new_table.Cell(row.Index, column.Index).Range!.Text = text
                Next column
            Next row
        ElseIf pptShape.HasTextFrame Then
            text = pptShape.TextFrame.TextRange.Text
            wordDoc.Range.InsertAfter(text)
        End If
    Next pptShape
Next pptSlide
End Sub

  1. 第四种
Sub ExtractText()
Dim pptSlide As Slide
Dim pptShape As Shape
Dim pptTable As Table
Dim wordApp As Object
Dim wordDoc As Object
Dim text As String
Set wordApp = CreateObject("Word.Application")
wordApp.Visible = True
Set wordDoc = wordApp.Documents.Add()
For Each pptSlide In ActivePresentation.Slides
    For Each pptShape In pptSlide.Shapes
        If pptShape.HasTable Then
            Set pptTable = pptShape.Table
            Dim new_table As Table
            Set new_table = wordDoc.Tables.Add(wordDoc.Range(), pptTable.Rows.Count, pptTable.Columns.Count)
            For Each row In pptTable.Rows
                For Each column In pptTable.Columns
                    text = pptTable.Cell(row.Index, column.Index).Shape.TextFrame.TextRange.Text
                    new_table.Rows(row.Index).Cells(column.Index).Range.Text = text
                Next column
            Next row
        ElseIf pptShape.HasTextFrame Then
            text = pptShape.TextFrame.TextRange.Text
            wordDoc.Range.InsertAfter text
        End If
    Next pptShape
Next pptSlide
End Sub

只需6行代码,Python将PPTWord
早起Python
08-10 1905
大家好,又到了Python办公自动化系列。本文将讲解如何将文字PPT提取出来并写入Word,主要将涉及如何使用python-pptx和python-docx交互操作wordppt文件! 本文依旧来于真实的办公自动化需求! 一、需求说明 img 有一份如图所示的ppt,包含了Python的介绍。现在需要将PPT中的文字提取出来并写入Word中,如下图 img 二、涉及知识 代码实际上非常简单,基于python-pptx和python-docx两个模块即可,核心代码只有6行。但需
《AI办公类工具PPT系列之四——ChatPPT
最新发布
再见孙悟空的专栏
08-22 407
ChatPPT_AI一键对话生成PPT_智能排版美化-必优科技智能PPTChatPPT是一款基于人工智能技术的PPT制作工具,它通过对话式AI创作,为用户提供快速生成和美化PPT的全流程服务。主题输入:用户只需输入PPT的主题,ChatPPT即可根据主题快速生成相应的演示文稿。多格式支持:支持从Word、XMind、Markdown等多种格式的文档直接生成PPT,满足用户多样化的输入需求。
PPTWord代码
weixin_34320159的博客
01-08 990
PPTWord 开发说明 开发者:野狼QQ:1574022873博客:http://liuxzh1026.cnblogs.com =============================================== 当前的大部分软件,在换过程中,只能保持文本,图片无法导出。开发目的为填补此空白。另,自学一下VS操作Office的方法。 程序很小,仅供学习,高手勿笑。 程序开...
PPT提取文字C代码实现
kkyy2021的博客
01-19 985
以下是C语言实现提取PPT文本的代码 头文件 file_read.h #include "stdafx.h" //Appendix B // Sample code to read the text out of a PowerPoint '97 presentation. #include <ole2.h> #include <stdio.h> //#include <time.h> // Stolen from app\sertypes.h // sys
PPT中的文本提取word文档
weixin_44245778的博客
10-30 4093
1、打开想要提取PPT文件 2、按住 Alt+f11进入Microsoft Visual Basic for Applications 3、在左边的工程窗口空白处右键,选择 “插入”---“模块” 然后中间会出现一个代码编辑区 4、在最上方菜单栏找到“工具”点击选择“引用”,然后会弹出下面这个框框,找到Microsoft Word x Object Library(x代表版本数)...
PPTWORD软件使用教程,可以提取PPT文字和图片到Word
FL1623863129的博客
05-09 1439
pptword软件是全球首款可以将ppt里面的文字和图片放进word的软件,注意只能提取文字和图片,如果是公式或者特殊文件比如声音,flash等是不支持的,由于pptword是完全不同的办公文档,所以换不能保持PPT原来格式到word里面,我们首先看看软件的界面 软件使用非常傻瓜,您只需要导入ppt文件然后点击开始就可以等任务完成,然后那你就可以到文件目录查看换效果。换速度还得看p...
ppt中流程图旁边怎么添加_word中流程图怎么导入到ppt ppt流程图导入word
weixin_42449422的博客
01-15 3911
如何将word里图片批量导入PPT以Office2003为例:1、在Word中,将需要PPT的文档另存,保存类型选【网页(*.htm,*.html)】,然后进行保存。2、保存以后,在保存的目录中会有一个【文件名.htm】存在的文件,和一个【文件名.files】存在的目录,所有图片都在这个目录中。3、选择按【类型】浏览,手动删除扩展名为【PNG】之外的所有文件。4、打开Powerpoint,工具...
python读取word中的文字格式_Python-docx 读写 Word 文档:读取正文、表格文本信息、段落格式、字体格式等...
weixin_29525745的博客
01-30 2788
Python-docx 模块读写 Word 文档基础(三):读取文档文本信息、表格信息、段落格式、字体格式等前言:1、获取文档章节信息:2、获取段落文字信息:3、获取文字格式信息:4、获取文档中表格信息:结尾:【Python与Office】专栏前言:前两篇博客介绍了 Python 的 docx 模块对 Word 文档的写操作,这篇博客将介绍如何用 docx 模块读取已有 Word 文档中的信息。本...
Python批量提取docx格式Word文档中所有文本框内的文本
Python小屋
03-11 2073
董付国老师面向计算机相关专业的教材《Python程序设计(第2版)》和面向非计算机专业的教材《Python程序设计基础(第2版)》同时被评为清华大学出版社2019年度畅销图书。封面图片:...
python读取word中的文字格式_利用Python-docx 读写 Word 文档中的正文、表格、段落、字体等...
weixin_39850143的博客
11-21 2437
前言:前两篇博客介绍了 Python 的 docx 模块对 Word 文档的写操作,这篇博客将介绍如何用 docx 模块读取已有 Word 文档中的信息。本篇博客主要内容有:1、获取文档的章节信息;2、获取段落文本信息;3、获取表格内文本信息;4、获取文档内格式信息。1、获取文档章节信息:1、用docx模块获取已有的word文档对象:from docx import Document# Docum...
C# WordPPT
04-03
WordPPT 码 自己码的 希望可以帮助到大家
相当好用的PPTWORD工具
09-25
相当好用的PPTWORD工具。081ovCMu5nj086Ldf-EdEz-GIisW5PVX8vN8DHE4znpKMDACooYPMU71RU6w0YlJ2wPidMEmxdD0-neufIR3Xir3 或者08US9A95I+lKa9nbOLXqv0V8xqdDvKGcNcTpN2wV11iSqOCVuA6A5KKZRHc5GVMIybWomK6rNwoj8mYy8LXRFi23
python实现ppt内容输出为word形式
rubyw的博客
05-23 396
代码】python实现ppt内容输出为word形式。
ppt文字提取word
qq_44511161的博客
04-30 2005
PPTWord多种方法,一种为复制法,第二种为发送法,第三种为中间换法,第四种为用宏VBA快速换法。除发送法外,其它三种方法只能文字,不能换背景图片;而第一四种方法不能保留原格式,第二三种能保留原格式;若只文字,前三种方法不能把大纲视图不显示文字的幻灯片换到Word。 把 PPT 发送到 Word,既可以把整个幻灯片Word,又可以只文字,但不能把大纲视图不...
想将PPT文字换到Word文档?看这一篇就够了!!!
#两个西柚
06-24 2843
又到了期末考试复习周,一些老师拿了PPT给我们复习,为了更好复习很多人会想把PPT打印出来,但是看到这么多页的PPT。。。。
python自动化:批量自动将PPT中的内容复制到word中(附完整码)
希望我的博客,能帮上你解决学习中工作中所遇到的问题
03-01 133
python自动化:批量自动将PPT中的内容复制到word中(附完整码)
VBA提取PPT中的文字
Rainbow
02-16 3614
PPT另存为pptm格式,这是一种可以执行代码的文件, 将以下代码放到VBE中,运行即可提取 Public Sub Main() Dim temp As String, tmpShape As Shape, tmpSlide As Slide Dim pptPageCount As Integer, MyFName As String pptPageCount = Act...
PPTWord文档的四种方法
热门推荐
大龙的编程学习笔记
07-15 1万+
注: 实际使用中,方法四比较好使。 如果想要提取图片,可以先换成pdf,再换成word。 方法一:利用“大纲”视图       打开PPT演示文稿,单击“大纲”,在左侧“幻灯片/大纲”任务窗格的“大纲”选项卡里单击一下鼠标,按“Ctrl+A”组合健全选内容,然后用“Ctrl+C”组合键或右键单击在快捷菜单中选择“复制”命令,然后粘贴到Word里。       小提示:       这种方法会把原来幻灯片中的行标、各种符号原封不动的复制下来。 方法二:利用“发送”功能巧换       打开要换的P
Python实现PPT化为Word和OCR识别
weixin_52296952的博客
03-22 2869
Python实现PPT化为Word和OCR识别
C#实现:Word, PPT, ExcelPDF的代码示例
总结来说,这份代码提供了一种基础的方法,展示了如何使用C#通过Interop技术将Word、Excel和PPT文件换成PDF,适合开发者快速入门或作为基础框架进行扩展。实际项目中可能需要处理更复杂的错误处理和文件路径管理。
写文章

热门文章

  • linux遇到hint:num lock on 25980
  • SPSS之“参数检验” 9762
  • 完整方法:摄像头打不开,驱动无法安装成功,设备状态显示由于其配置信息(注册表中的)不完整或已损坏,windows无法启动这个硬件设备。(代码19) 6435
  • 利用VMware在U盘中安装Linux(centos7)超详细完整版 3510
  • 用PHP制作简易的四则运算的计算器(固定数值和运算符) 3258

分类专栏

  • 解决方法 6篇
  • 前端小bug 1篇
  • HTML/css 2篇
  • linux 2篇
  • spss 2篇
  • PHP 1篇

最新评论

  • 完整方法:摄像头打不开,驱动无法安装成功,设备状态显示由于其配置信息(注册表中的)不完整或已损坏,windows无法启动这个硬件设备。(代码19)

    2301_80829026: 太有实力了

  • ppt提取文字到word的代码(多种代码可选)

    朚枔: 非常好用表情包

  • 完整方法:摄像头打不开,驱动无法安装成功,设备状态显示由于其配置信息(注册表中的)不完整或已损坏,windows无法启动这个硬件设备。(代码19)

    t_359057596: 真的牛!其他方法都行不通,只有你的方法可以,同样猜测是360搞的鬼

  • 完整方法:摄像头打不开,驱动无法安装成功,设备状态显示由于其配置信息(注册表中的)不完整或已损坏,windows无法启动这个硬件设备。(代码19)

    单27: 为什么重启电脑还会有呢

  • linux遇到hint:num lock on

    幸福糖Tang: 你这等于没说 作秀吗

大家在看

  • 详细描述一下一条SQL语句在MySQL中的执行过程 584
  • springboot实战学习(7)(JWT令牌的组成、JWT令牌的使用与验证) 275
  • LCP 18. 早餐组合 双指针 排序求组合 409
  • python 类与对象相关知识简记 638
  • 第二百四十一节 JPA教程 - JPA一对一主键连接列示例、JPA一对一映射级联示例 814

最新文章

  • npm install报错:Unexpected token $ in JSON at position
  • C盘清理总结
  • npm ERR! A complete log of this run can be found in:
2023年2篇
2022年1篇
2021年5篇
2020年5篇

目录

目录

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值

深圳SEO优化公司北京seo网站优化长春市网站优化找哪家北京网站优化推广收集沧州科技网站优化沧州整站网站优化要多少钱平顶山网站推广优化哪家价格便宜seo网站优化系统黄山网站优化排名方案网站 性能优化溧阳市网站关键词优化如何曲阜关键词网站优化网站内容优化主要包括的内容宁夏网站优化电话贵阳网站产品优化辉县网站优化推广998元网站建设优化菏泽好的服务行业网站优化青州网站优化多少钱河北网站优化托管策划东宝区网站排名优化要多少钱黄江seo网站优化公司模板网站优化需要注意哪些巩义百度网站优化价格多少模板网站好优化吗韶关企业网站优化方式网站收录了怎么优化关键词东莞百度网站优化联系电话域名2个月的网站可以优化吗德宏网站优化外包seo网站优化如何插外链歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化