[返回首页]
 ◎ 您当前的位置:首页 >> 办公学堂 >> MS Word >> 正文
Word中巧用宏命令
作者:未知 来源:网上收集 发布时间:2007-3-15 18:29:07 浏览次数: 0731518541724354

宏命令作为一个非常重要的功能,在现在的许多软件中都不可缺少。利用宏,可以大大地简化我们的工作,准确快速地完成繁琐的任务。下面,就给大家详细介绍我在Word中使用宏的一个实例。

【需求】

  在word中进行批量处理,将大量的Word文档.doc文件转换为.htm文件

【分析】

  我们知道,利用word可以将.doc文件转换为.htm文件,方法是:

  在Doc文件编辑窗口中,选择菜单“文件/另存为”,在“保存类型”下列列表中选择“html document”,按“保存”。单独进行几个doc文件的转换还不算繁琐,但要大批量地进行转换工作时,比如:按章节输入了一本书,形成了几十个.doc文件,要对这些文件进行转换成.htm文件的工作,这时,就不能采用手工一个个处理的笨办法了!怎么实现呢?请往下看。

【实现步骤】

  假设大批量.doc文档所在目录为c:\docs,文件名为1.1.doc,1.2.doc ...

1、 启动word

2、 关闭当前默认打开的空文档

3、 选择菜单“工具/宏/录制新宏”,输入宏名称“doctohtml”,按“确定”,进入了宏录制过程。

4、 选择菜单“文件/打开”,选择目录c:\docs,选择文件1.1.doc,按“确定”。

5、 选择菜单“文件/另存为”,在“保存类型”下列列表中选择“html document”,    按“保存”。

6、 选择菜单“文件/关闭”

7、 选择菜单“工具/宏/停止录制”

8、 选择菜单“工具/宏/宏”

9、 在出现的“宏”窗口左部选中doctohtml,单击右边的按钮“编辑”

10、宏代码改造:

    在出现的“Microsoft Visual Basic”窗口中,可以看到如下的宏代码:

    Sub doctohtml()

    '

    ' doctohtml Macro

    ' 宏在 99-11-8 由 xxx 录制

    '

      ChangeFileOpenDirectory "C:\docs"

      Documents.Open FileName:="1.1.doc", ConfirmConversions:=False, ReadOnly:= _

        False, AddToRecentFiles:=False, PasswordDocument:="", PasswordTemplate:= _

        "", Revert:=False, WritePasswordDocument:="", WritePasswordTemplate:="", _

        Format:=wdOpenFormatAuto

      ActiveDocument.SaveAs FileName:="1.1.htm", FileFormat:=100, LockComments:= _

          False, Password:="", AddToRecentFiles:=True, WritePassword:="", _

          ReadOnlyRecommended:=False, EmbedTrueTypeFonts:=False, _

          SaveNativePictureFormat:=False, SaveFormsData:=False, SaveAsAOCELetter:= _

          False

      ActiveDocument.Close

    End Sub

    对上面的代码进行改造,如下:

    Sub doctohtml(myfile as string)

    '

    ' doctohtml Macro

    ' 宏在 99-11-8 由 xxx 录制

    '

      ChangeFileOpenDirectory "C:\docs"

      If FileExists(gwfile + ".doc") Then

         Documents.Open FileName:=myfile+".doc", ConfirmConversions:=False, ReadOnly:= _

           False, AddToRecentFiles:=False, PasswordDocument:="", PasswordTemplate:= _

           "", Revert:=False, WritePasswordDocument:="", WritePasswordTemplate:="", _

           Format:=wdOpenFormatAuto

         ActiveDocument.SaveAs FileName:=myfile+".htm", FileFormat:=100, LockComments:= _

            False, Password:="", AddToRecentFiles:=True, WritePassword:="", _

            ReadOnlyRecommended:=False, EmbedTrueTypeFonts:=False, _

            SaveNativePictureFormat:=False, SaveFormsData:=False, SaveAsAOCELetter:= _

            False

         ActiveDocument.Close

      end if

    End Sub

    并加入下面两个过程:

    '判断文件是否存在的函数

    Function FileExists(ByVal FileName As String) As Boolean

       On Error Resume Next

       FileExists = Dir$(FileName) <> ""

       If Err.Number <> 0 Then

          FileExists = False

       End If

       On Error GoTo 0

    End Function

    '实际的转换函数

    Sub mydoctohtml()

       If MsgBox("确认执行转换doc到html文件吗?", vbOKCancel + vbDefaultButton2) = _

            vbCancel Then GoTo eeeddd

    

      Call doctohtml("conver")

      Call doctohtml("content")

      Call doctohtml("qianyan")

      Call doctohtml("fl")

    

      Call doctohtml("1.1")

      Call doctohtml("1.2")

      ...

      Call doctohtml("1.10")

      ...

      Call doctohtml("2.1")

      ...

      Call doctohtml("3.1")

      ...

      ...  

      Call doctohtml("9.1")

      ...

      eeeddd:

    End Sub

   

      至此,全部代码改造完毕!关闭“Microsoft Visual Basic”窗口,回到Word窗口。

11、选择菜单“工具/宏/宏”,出现“宏”窗口,在左边的宏列表中,可以看到“mydoctohtml”一项,选中它,按右边的按钮“运行”,出现提示窗口“确认执行转换doc到html文件吗?”,选择“确定”,批量转换工作开始了!

【后记】

  上面应用宏的例子,看起来虽然步骤很多,其实做起来却非常简单,技术上关键在于2个环节:

第一、根据某个任务录制初始的宏;

第二、对初始的宏代码进行改造,已满足满足特殊的需求。

  自动化地处理,是否很让你感到计算机的高级?宏,真是个好东东

[返回上一页] [打 印]
上一篇文章:巧用“文本框衔接”一例 | 下一篇文章:Word的“压缩”功能
热点文章 推荐文章 相关信息
·在Word XP中使用语音输入法
·WORD快捷键大全
·用好Word XP中的虚拟功能
·Word快速转换为PPT文稿
·教你自制WORD高级模板
·Word宏应用实例
·WORD使用技巧集锦
·用Word绘制“斜线表头”的二种方法
·用Word软件编辑试卷样式的小技巧
·Word字处理软件启动故障修复一例
·一山还有一山高 Word文档加密技巧
·回归毛笔时代--个性字帖DIY