QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

查看: 1870|回复: 3
收起左侧

[原创] 将PPT文件转换为Word文档

[复制链接]
发表于 2009-4-24 17:22:25 | 显示全部楼层 |阅读模式 来自: 中国山东烟台

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

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

x
Word 转换为PPT,很容易做到,但是反之把PPT转换为Word,就不一定那么简单了!一个很笨的方法,就是把里面的文字一段一段粘出来。文字少了还好说,要是文字多了,那个工作量就可想而知了......
  PowerPoint 2003 中的转换
  (Microsoft Office PowerPoint 2003版)
  1、首先打开需要转换成中文Word文件的中文PowerPoint文件,然后鼠标左键依次选择“文件→发送→Microsoft Word”命令项。
& a9 S1 n& E; @0 v
    2.完成选择之后,系统首先会出现“撰写”对话框,此时应当在“Microsoft Word使用的版式”栏中选择一种版面的配置,然后在“将幻灯片添加到Microsoft Word文档”栏中选择将中文PowerPoint的幻灯片转换到中文Word文件时的变化方式。
 
  3.完成上述选择之后,接着使用鼠标左键单击“确定”按钮,即可启动中文Word,然后自动实现将中文PowerPoint文件转换到中文Word文件中,此时只需要在中文Word中稍微进行一些修改,即可完成转换工作。
   但转换效果并不令人满意。
  (PowerPoint 2007 中的转换)
在Microsoft Office PowerPoint 2007版中,这个功能依然没有得到改善。只是在“发送”里面却找不到Microsoft Word命令项了。
 
 $ q& i) D/ K( P" o' t' |
Microsoft Word命令项的确被转移了地方,点击“发布”——点击“使用Microsoft Office Word创建讲义”菜单。
 
 + }2 e% k8 y7 L1 i# g. r# I
一个完全与PowerPoint 2003一样的对话框,甚至没有任何修饰,既然如此,因而与PowerPoint 2003 转换的效果是一样的。 

; j9 C4 v4 h- {  @3 j  A6 @" ]
        应用程序转换PPT 到Word 文档

; M" V" e  ^+ y  I
你只需把下面的代码复制,粘贴到文本文档里,然后另存为****.vbs****可以自己改变,如:转换.vbs)。然后把你想转换为word格式的ppt文件放到c盘下,不要放文件夹,直接放文件!运行刚才生成的小程序,安提示确定,修改想保存的路径就可以了,稍等一会即可完成,转换过程可视。此程序小而精悍,转换效果很好,转换好后需要的话自己可以重新排版!(从下面开始复制)
'绑定到本地计算机   @* I; H7 ?" X, N9 c3 }$ j
strComputer = "."
3 k$ U* ?6 K" D: i- L'
如果发生错误,继续执行 # B. t, b& P2 U- \
on error resume next- H- U/ i- X0 J3 S0 V

6 @- {" u  S  F9 x) @! ~Set objWMIService = GetObject("winmgmts:" _- ^8 `) ^: W: g. S" F0 ^: S. b
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")/ j8 M: m. j' O/ w6 \- E
msgbox "
此脚本可以批量将ppt文件中的文本转换为word文件。图片、表格等内容则自动跳过" & vbcrlf & "使用时请把所有要转换的ppt文件复制到目录c:\下。双击运行此文件即可。" & vbcrlf & "运行此脚本需要本机上安装了office" 4 a& A0 X/ d7 ~
'
创建一个word对象
$ Z8 k; l8 N( k2 P4 _Set objWord = CreateObject("Word.Application")
, i/ e3 |9 f, [4 X( O7 E'
创建一个ppt对象
) u4 `  F6 e9 n; m  j5 u  WSet pptApp = CreateObject("PowerPoint.application")
* W9 H4 d; t) \5 d'
获得c:\目录下的文件集合
2 W8 N7 X5 u/ E5 B, M" N; O0 }Set FileList = objWMIService.ExecQuery _
7 `' B! y$ t& R5 T% b/ ]("ASSOCIATORS OF {Win32_Directory.Name='c:'} Where " _
  b8 i- t0 [' P7 T: l8 y& "ResultClass = CIM_DataFile")( M. a8 h. g: E  j
For Each objFile In FileList5 n% j, U4 v+ Z# n$ F+ k
'
如果文件的扩展名是ppt
. m' m; J% j, }. `If objFile.Extension = "ppt" Then
. h) _# p/ h+ F: Z0 r( B% K2 dpptApp.visible = true
# t' J5 W6 B, L4 k! z'
打开这个ppt文件   {& x# U& M( p6 d
Set pptSelection = pptApp.Presentations.Open("c:\" & objFile.FileName & "." & objFile.Extension): O( A1 e- C! Q* f6 U8 a
'
如果想让脚本处理得快些,把下面一行改为“objWord.Visible = false”,不推荐。
( M% N5 r  H3 |+ n" E. }8 y9 ^objWord.Visible = true
4 W& Y8 w* C7 f& R# u1 u'
新建一个word,以保存ppt中的文本 9 e3 ]2 M1 i* h' ?: z' n
Set objDoc = objWord.Documents.Add()/ f  [$ @) L! w  {
Set objSelection = objWord.Selection1 K, j3 D. Q( f7 V& H
'
ppt的第一页开始循环。Slides.Count即幻灯片的数量
2 ^- z6 i% q6 m( o# _* ~  j. _For i = 1 To pptSelection.Slides.Count
$ J5 `' M, S2 q: A( J'
从每一张ppt的第一个文本框开始循环,Shapes.Count,即每张幻灯片中文本框的数量 ' _. g9 m2 W. A
For j = 1 To pptSelection.Slides(i).Shapes.Count8 @9 _* |& u  U3 t* Y
'
如果是每页的第一行,就按标题处理,变成黑体字
4 z/ N3 o1 A2 d. Kif i =1 then
5 W* k/ H- N% f4 ^5 NobjSelection.Font.Name = "
黑体"; W. S; C3 n4 A7 r7 I4 i, N/ P
'
把文本框中的文字添加到word
1 `& G6 x- _# [; P) K) ^objSelection.TypeText pptSelection.Slides(i).Shapes(j).TextFrame.TextRange.text
. g* M$ g6 d* E! V" e, L9 BobjSelection.TypeParagraph()& o0 T2 ]# i9 @/ V4 b
objSelection.Font.Name = "
宋体"
# J3 q7 [- q" r* D% i6 o6 ~end if4 b$ i- g5 q$ p
objSelection.TypeText pptSelection.Slides(i).Shapes(j).TextFrame.TextRange.text
7 U, ?- ^5 T* u/ n' @" M& ~'
加一个回车
# L" S5 p' ]$ U+ \& fobjSelection.TypeText vbcrlf
* Q- V  [& g  k, @9 ZNext+ V8 E) ^/ \4 c3 z( ~# |. p
next" n$ O+ D+ f4 Z4 ^$ Q
'
关闭这个ppt文件 - J  K7 E$ l% ?; C) u
pptSelection.close. @0 p% T8 |" l& W
'
保存word文件。 5 L; ?* j. y8 W- X- e. D
objDoc.SaveAs("c:\" & objFile.FileName & ".doc")
8 g, E  i. U+ {6 `. |% N/ B'
如果不需要关闭word,把下面这一行删掉
; {  ]# b3 ^% CobjDoc.close
9 @# @! T3 W) {, `4 A) v'
如果不想弹出消息框,把下面这一行删掉
$ W! ]4 h0 M2 Y5 s( |7 kmsgbox "转换后的word已保存在c:\" & objFile.FileName & ".doc"( X& w5 @% Q/ t0 p3 b" J0 ?% L
else '
没有ppt文件
2 t' f. E6 E5 Y8 P) s) |'msgbox "错误:c:\下没有发现ppt文件!"
9 G7 j0 S4 a+ xEnd If
* G. M! K" U' ^) n; SNext- l% W; ^/ {+ S# v+ w2 Z' A) @
pptApp.quit
发表于 2009-4-24 18:38:52 | 显示全部楼层 来自: 中国浙江宁波
还没有这方面的需要,感觉没有这个必要。。。
发表于 2009-4-25 00:34:05 | 显示全部楼层 来自: 中国上海
下来试试看!!!
发表于 2009-4-25 11:52:19 | 显示全部楼层 来自: LAN
可以先转成PDF,在从pdf另存为WORD。不过一般很少需要将ppt转成word
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

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