用vbscript把 Word 文档保存为文本文件的代码

问: 
嗨,Scripting Guy!我有一系列 Word 文件。我想打开这些文件中的每一个并将它们另存为纯文本文件。有没有一种通过使用脚本实现此目的的方法呢?

-- CG

答: 
您好,CG。是的,使用一个脚本,您很容易实现此目的。事实上,除了极少例外情况之外,您在 Microsoft Office 程序中可以做到的事情基本上都可以使用一个脚本来完成。在 Word 中,您可以使用“文件”–“另存为”将 Word 文档另存为文本文件。您也可以使用一个脚本做同样的事情。实际上,您可以使用以下脚本实现此目的:

代码如下:

Const wdFormatText = 2

Set objWord = CreateObject("Word.Application")  
Set objDoc = objWord.Documents.Open("c:\scripts\mylog.doc")  
objDoc.SaveAs "c:\scripts\mylog.txt", wdFormatText

objWord.Quit

我们先创建一个名为“wdFormatText”的常量,然后将值 2 分配给它;此常量将用于告诉 Word 我们希望新文件保存为一个文本文件。然后我们创建一个 Microsoft Word 实例,使用“打开”方法打开文件 C:\Scripts\MyLog.doc。文档打开之后,我们只需要一行代码就可将此 Word 文档另存为文本文件:

objDoc.SaveAs "c:\scripts\mylog.txt", wdFormatText

As you can see, we call the SaveAs method, and we pass it two parameters: 1) C:\Scripts\MyLog.txt, which is the path for our new text file; and, 2) wdFormatText, which tells Word to save the file as plain text.这样就可以了。然后我们使用“Quit”方法关闭 Word 实例。

两个重要注意事项。第一,您在屏幕上看不到任何正在发生的事情,因为,默认情况下,无论何时您从一个脚本中调用 Word,它都将运行在一个不可见窗口中。如果您希望看到它在屏幕上弹出,保存文件,然后消失,请使用以下代码:

Const wdFormatText = 2

Set objWord = CreateObject("Word.Application") 
objWord.Visible = TRUE 
Set objDoc = objWord.Documents.Open("c:\scripts\mylog.doc") 
objDoc.SaveAs "c:\scripts\mylog.txt", wdFormatText

objWord.Quit

唯一的不同之处在于:我们将“Visible”属性设置为 TRUE。

第二,您可以将 Word 文档另存为纯文本以外的格式。例如,使用常量 wdFormatHTML(值 = 8)将 Word 文档另存为 HTML 文件;使用常量 wdFormatXML(值 = 11)将 Word 文档另存为 XML 文件。

(0)

相关推荐

  • VB.net读取Word文档属性的方法

    复制代码 代码如下: '对自定义属性进行读取         Dim Properties = SourceDoc.CustomDocumentProperties            Dim PropertyType As Type = Properties.GetType Try            Dim Authorprop = PropertyType.InvokeMember("Item", Reflection.BindingFlags.Default Or Refl

  • 通过VB6将ASP编译封装成DLL组件最简教程 附全部工程源文件

    1.新建DLL打开VB6-->文件-->新建工程-->选择ActiveX DLL-->确定 2.将默认工程.类重命名工程重命名:工程-->工程1 属性(此名称对应窗体内工程项目名称)-->在打开对话框中将"工程名称"重命名为ASP2DLL(当DLL组件在系统中注册后,在asp中默认的调用方法是"工程名.类名")-->确定 类重命名在属性窗口中将名称重命名为Demo 3.定义ASP基本对象添加模块:工程-->添加模块--

  • 如何用word vb宏来生成sql

    昨天BOSS下了个命令让我用word宏的方式来快速生成sql,这样在我们建表的时候就不用在一条一条元数据的输入.从而提高效率节约成本: 接到命令后就开始着手来做,一边上网搜相关的现成的材料,一边看vb宏的视频教程.终于让我写出了这个程序,虽说有点儿小吧,可是感觉挺好的. 这里的vb宏要针对固定的数据库数据字典表格进行的.由于代码太长就不拿出来了,这里是word中的表格式和vb运行后的结果如下: 文件名称 T_Test 中文描述 用户信息表 序 号 字段名 中文说明 数据类型 长度 缺省 允许 空

  • VB中的RasEnumConnections函数返回632错误解决方法

    今天用了一下RasEnumConnections函数,发现MSDN上的例子是错误的. MSDN上RasEnumConnections的文档是这么说的: 复制代码 代码如下: To determine the required buffer size, call RasEnumConnections with lprasconn set to NULL. The variable pointed to by lpcb should be set to zero. The function will

  • VB6反编译软件VB RezQV2.4a 正式版注册码

    VB6反编译软件VB RezQV2.4a 正式版 (下载该软件)软件说明:VB6反编译软件VB RezQV2.4a 正式版注册码:name: Ardith Freebairncode: 680F-69EA-7154-0CA3 发布者:Regkey.cn发布时间:2006-2-1 12:02:45发布IP:202.96.134.128

  • VB实现的16位和32位md5加密代码分享

    在各种登陆系统中,用户密码的md5加密是不可少的. 这么说吧,即使你通过各种手段看到了用户的登陆密码,但那一串古古怪怪的东西你也不可能知道它是什么,这就是保护. md5加密运算是不可逆的,就是说你不能通过那一串古古怪怪的东西算出它原始的样子. 下面是完整的md5代码,不要去理解算法了,用到时拿去直接调用. Private Const BITS_TO_A_BYTE = 8 Private Const BYTES_TO_A_WORD = 4 Private Const BITS_TO_A_WORD

  • VB调用Word拼写检查功能实例

    众所周知,Word有自带的拼写检查功能.VB中想要实现调用 Word 拼写检查功能其实很简单就可以实现,方法是先建立word对象,然后把需要检查的字符串放到 WORD中,调用word拼写检查,再取出返回值,最后关闭对象. 各个步骤的具体实现代码如下所示: Function CheckSpell(IncorrectText as string) as string Dim Word As Object, retText$ On Error Resume Next '建立WORD对象并打开 Set

  • VB6中的LSet语句和RSet语句详解

    VB6中有几种长得很像的语句:Let.Set.LSet.RSet. Let用于一般变量的赋值: 复制代码 代码如下: [Let] varname = expression 大部分情况下我们都省略Let,直接用等号赋值,以致于不少人根本不知道Let的存在. Set用于对象的赋值,将变量指向对象并增加对象的引用计数,也有不少人不知道引用计数为何物. 那么LSet是干什么用的呢?咋一看好像是Let和Set的结合体,其实不然.LSet中的L是Left的缩写,与之对应的是RLet.你问我怎么知道L是Lef

  • 用vbscript把 Word 文档保存为文本文件的代码

    问:  嗨,Scripting Guy!我有一系列 Word 文件.我想打开这些文件中的每一个并将它们另存为纯文本文件.有没有一种通过使用脚本实现此目的的方法呢? -- CG 答:  您好,CG.是的,使用一个脚本,您很容易实现此目的.事实上,除了极少例外情况之外,您在 Microsoft Office 程序中可以做到的事情基本上都可以使用一个脚本来完成.在 Word 中,您可以使用"文件"–"另存为"将 Word 文档另存为文本文件.您也可以使用一个脚本做同样的事

  • php在程序中将网页生成word文档并提供下载的代码

    在这篇文章中主要解决两个问题: 1:在php中如何把html中的内容生成到word文档中 2:php把html中的内容生成到word文档中时,不居中显示问题,即会默认按照web视图进行显示. 3:php把html中的内容生成到word文档中时,相关样式不兼容问题 正文: 复制代码 代码如下: echo '<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microso

  • ASP.NET实现word文档在线预览功能代码

    于是考虑在每个文件上传时为其生存一份HTMl文件,这样就能实现在线预览功能.主要代码如下 复制代码 代码如下: using System; using System.Collections; using System.Configuration; using System.Data; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using S

  • JSP生成WORD文档,EXCEL文档及PDF文档的方法

    本文实例讲述了JSP生成WORD文档,EXCEL文档及PDF文档的方法.分享给大家供大家参考,具体如下: 在web-oa系统中,公文管理好象不可或缺,有时需要从数据库中查询一些数据以某种格式输出来,并以word文档的形式展现,有时许多word文档保存到数据库中的某个表的Blob字段里,服务器再把保存在Blob字段中的图片文件展现给用户.通过网上查找发现很少有关于此类的文章,现在整理起来供大家参考. 1 在client端直接生成word文档 在jsp页面上生成word文档非常简单,只需把conte

  • 如何使用C#从word文档中提取图片

    图片和文字是word文档中两种最常见的对象,在微软word中,如果我们想要提取出一个文档内的图片,只需要右击图片选择另存为然后命名保存就可以了,今天这篇文章主要是实现如何使用C#从word文档中提取图片. 这里我准备了一个含有文字和图片的word文档: 详细步骤与代码: 步骤1 : 添加引用. 新建一个Visual C#控制台项目,添加引用并使用如下命名空间: using System; using Spire.Doc; using Spire.Doc.Documents; using Spir

  • Java如何给Word文档添加多行文字水印

    前言 我在以往的文章中曾介绍过如何给Word文档添加文本水印和图片水印,及怎样删除文档中的水印.关于文本水印,之前那篇教程里主要指的是单行字体的水印,而在操作Word文档时,有时也会碰到需要添加多行文字水印的情况.所以,本文将演示如何使用Java程序来为Word文档添加多行文字水印. 代码测试环境: Intellij Idea2019.1 JDK 1.8.0 Spire.Doc.jar Jar包获取及导入 方法一:手动将Jar包导入IDEA.具体步骤如下: 步骤 1:在 E-iceblue中文官

  • asp.net 在线编辑word文档 可保存到服务器

    注意:你要打开的服务器端的word文档要有写权限.iis要开起 web服务扩展中的webdav为允许 具体参考文档msdn:http://msdn2.microsoft.com/en-us/library/ms454230.aspx 原理:通过 javascript 创建一个ActiveX控件实例(为浏览者机器Program Files\Microsoft Office\OFFICE11\owssupp.dll或Program Files\Microsoft Office\OFFICE10\ow

  • 使用Python通过win32 COM实现Word文档的写入与保存方法

    通过win32 COM接口实现软件的操作本质上来看跟直接操作软件一致,这跟我之前经常用的通过各种扩展的组件或者库实现各种文件的处理有较大的差异.如果有过Windows下使用Word的经历,那么使用win32 COM应该说是更为便捷的一种方式. 先前通过拼凑网络上的代码实现过Word文档的处理,今天通过读文档从头开始做一次新的尝试.简单实现一个Word文件的创建.写入与存储. 实现的代码如下: #!/usr/bin/python import os from win32com.client imp

  • php通过baihui网API实现读取word文档并展示

    项目中遇到一个小问题,想实现php 如何读取word文档,并将其内容原样显示 可以 使用API 可以看看baihui.com 的写写应用 的API 申请一个 APPKEY 就能使用,你可以看看 ... 对免费版本有限制 比如 excel 支持,可以参考我这个 appkey是我申请的,可以使用吧 ... 保存成本地的一个html文件 打开后直接使用 word 的类似 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN&q

  • asp.net中如何批量导出access某表内容到word文档

    下面通过图文并茂的方式给大家介绍asp.net中批量导出access某表内容到word文档的方法,具体详情如下: 一.需求: 需要将表中每一条记录中的某些内容导出在一个word文档中,并将这些文档保存在指定文件夹目录下 二.界面,简单设计如下: 三.添加office相关引用 添加后可在解决方案资源管理器中看到: 四.添加form1中的引用 using System.Data.OleDb; using System.Data.SqlClient; using System.IO; using Mi

随机推荐