发布网友 发布时间:2022-04-24 18:31
共1个回答
热心网友 时间:2023-11-01 14:43
宏就是一个包含一系列命令的脚本。最常接触到的就是Office软件中的宏程序是宏?如果需要在 word 中反复进行某项工作,那就可以利用宏来自动完成这项工作。宏是一系列组合在一起的 word 命令和指令,它们形成了一个命令,以实现任务执行的自动化。您可以创建并执行宏(宏实际上就是一条自定义的命令),以替代人工进行的一系列费时而单调的重复性 word 操作,自动完成所需任务。以下是宏的一些典型应用: 加速日常编辑和格式设置组合多个命令,例如插入具有指定大小、边框、行数和列数的表格使对话框中的选项更易于访问自动执行一系列复杂的任务 word 提供了两种创建宏的途径:宏录制器和“visual basic 编辑器”。 宏命令作为一个非常重要的功能,在现在的许多软件中都不可缺少。利用宏,可以大大地简化我们的工作,准确快速地完成繁琐的任务。下面,就给大家详细介绍我在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个环节: 第一、根据某个任务录制初始的宏; 第二、对初始的宏代码进行改造,已满足满足特殊的需求。 自动化地处理,是否很让你感到计算机的高级?宏,真是个好东东