QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

查看: 1871|回复: 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”命令项。
$ R# D& i3 ^' y2 e
    2.完成选择之后,系统首先会出现“撰写”对话框,此时应当在“Microsoft Word使用的版式”栏中选择一种版面的配置,然后在“将幻灯片添加到Microsoft Word文档”栏中选择将中文PowerPoint的幻灯片转换到中文Word文件时的变化方式。
 
  3.完成上述选择之后,接着使用鼠标左键单击“确定”按钮,即可启动中文Word,然后自动实现将中文PowerPoint文件转换到中文Word文件中,此时只需要在中文Word中稍微进行一些修改,即可完成转换工作。
   但转换效果并不令人满意。
  (PowerPoint 2007 中的转换)
在Microsoft Office PowerPoint 2007版中,这个功能依然没有得到改善。只是在“发送”里面却找不到Microsoft Word命令项了。
 
 
5 k( u5 J' D. c8 xMicrosoft Word命令项的确被转移了地方,点击“发布”——点击“使用Microsoft Office Word创建讲义”菜单。
 
 4 z! s' O, C3 J7 y
一个完全与PowerPoint 2003一样的对话框,甚至没有任何修饰,既然如此,因而与PowerPoint 2003 转换的效果是一样的。 

$ ]+ K, ]1 o  F
        应用程序转换PPT 到Word 文档

: t( e. v) E# ^$ O3 L' U/ r- t) F
你只需把下面的代码复制,粘贴到文本文档里,然后另存为****.vbs****可以自己改变,如:转换.vbs)。然后把你想转换为word格式的ppt文件放到c盘下,不要放文件夹,直接放文件!运行刚才生成的小程序,安提示确定,修改想保存的路径就可以了,稍等一会即可完成,转换过程可视。此程序小而精悍,转换效果很好,转换好后需要的话自己可以重新排版!(从下面开始复制)
'绑定到本地计算机
& L( I/ y' V* h( d2 G) X' H0 QstrComputer = ".". u# v1 I. }6 u3 I' B: o; a) C
'
如果发生错误,继续执行
6 p$ Z+ y% U0 v) k4 e8 Yon error resume next
; z0 U3 E" W! [9 K6 L+ E! T5 H+ \) d; r: A  X
Set objWMIService = GetObject("winmgmts:" _
5 j7 g1 D$ r5 z7 \& l% a, L$ ~& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")$ W5 B. e: A0 r/ L3 b4 r+ l
msgbox "
此脚本可以批量将ppt文件中的文本转换为word文件。图片、表格等内容则自动跳过" & vbcrlf & "使用时请把所有要转换的ppt文件复制到目录c:\下。双击运行此文件即可。" & vbcrlf & "运行此脚本需要本机上安装了office"
2 [% @3 d' y1 s" E3 D( g'
创建一个word对象 : c( I  U4 E5 O9 U$ n* J
Set objWord = CreateObject("Word.Application")# b' o- ~5 O$ K" e% y4 G
'
创建一个ppt对象 ; o' e! B5 Z9 b5 g' t* H5 b+ J
Set pptApp = CreateObject("PowerPoint.application")$ ]( E& O. N9 Y* b1 Q9 N4 Z+ [
'
获得c:\目录下的文件集合
1 y. K3 G8 c" Y7 S, p( bSet FileList = objWMIService.ExecQuery _
! C* W" J1 G* S4 I( k("ASSOCIATORS OF {Win32_Directory.Name='c:'} Where " _
4 u' Z+ }) ^. e  f4 i: R3 a& "ResultClass = CIM_DataFile")3 \+ J4 V* l) t& Q) T" ~8 w
For Each objFile In FileList
1 V! L# c0 o5 i5 M) L$ [5 |'
如果文件的扩展名是ppt% h8 E4 M. ~/ Q
If objFile.Extension = "ppt" Then
3 Y# s8 ?5 l1 g1 K% o+ W2 PpptApp.visible = true
! W: v) X" T  i* L' h( K. q'
打开这个ppt文件 * Y& O, g3 V2 Q# k! Q* r/ Y  p
Set pptSelection = pptApp.Presentations.Open("c:\" & objFile.FileName & "." & objFile.Extension)$ l' f( ?& A! g
'
如果想让脚本处理得快些,把下面一行改为“objWord.Visible = false”,不推荐。
: J) R  ]3 R3 \7 t$ e# o2 t: n/ MobjWord.Visible = true
0 w7 p. o6 m4 k. [# k'
新建一个word,以保存ppt中的文本 : O9 A1 ?* G3 H/ F/ T2 G
Set objDoc = objWord.Documents.Add()- M6 j1 ]7 x- d9 [1 S3 [; h' u# V
Set objSelection = objWord.Selection6 c8 h/ A& J2 {) J8 _
'
ppt的第一页开始循环。Slides.Count即幻灯片的数量
* N4 `5 S! s9 E: u8 Z9 C. s0 ~For i = 1 To pptSelection.Slides.Count
- _8 O! z' a% q'
从每一张ppt的第一个文本框开始循环,Shapes.Count,即每张幻灯片中文本框的数量
: i7 H7 V; g9 v' z2 h& M' g+ M2 |For j = 1 To pptSelection.Slides(i).Shapes.Count7 q/ V6 F8 R; _: R8 Y6 x3 [; A
'
如果是每页的第一行,就按标题处理,变成黑体字
1 D2 G$ U6 d, ^4 S4 j/ }if i =1 then3 e+ S$ @" Z, r0 q
objSelection.Font.Name = "
黑体"* S1 i( m/ Q  k+ e  N
'
把文本框中的文字添加到word
( I7 h! s" P' r" f' g# TobjSelection.TypeText pptSelection.Slides(i).Shapes(j).TextFrame.TextRange.text
; g5 A1 h! c, R; l- j. t/ Y" S5 P/ |objSelection.TypeParagraph()' R" f# o" e6 U$ |
objSelection.Font.Name = "
宋体"
9 a5 G  ~) |; W9 K5 uend if
4 c- c$ G- j' z3 |( }3 b8 j' cobjSelection.TypeText pptSelection.Slides(i).Shapes(j).TextFrame.TextRange.text
' ~" Q4 r4 u; }; I+ G" z; z'
加一个回车
% z% g5 n# o- y5 [/ F! m5 |6 XobjSelection.TypeText vbcrlf) a2 W) E  w' Y% t" ]# L: D
Next) h! f8 i: {( |  t  n9 w
next# F/ R4 H2 `5 r
'
关闭这个ppt文件 3 @7 }, s, s* t" d
pptSelection.close
: f  @$ q( p& ]'
保存word文件。
1 Z6 B% G5 I- @objDoc.SaveAs("c:\" & objFile.FileName & ".doc")5 s6 n. h  Z5 C, {( t1 e; [; v* H" h
'
如果不需要关闭word,把下面这一行删掉 9 E7 R. H. W5 y2 |' a9 T
objDoc.close' m8 t( ], j4 I0 m/ h# c/ c0 `1 e' y
'
如果不想弹出消息框,把下面这一行删掉 " _* F5 ~* ?8 t, M. L5 ?6 S
msgbox "转换后的word已保存在c:\" & objFile.FileName & ".doc"9 e- W+ m3 {* @
else '
没有ppt文件 , o- @3 K9 C6 p$ z
'msgbox "错误:c:\下没有发现ppt文件!"/ q, {& h1 z$ Z! x5 N
End If4 C- }* p2 m5 y9 h
Next
+ m* R  S8 s3 f5 F& a* u: T# ]( npptApp.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 )

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