Word宏应用实例Word文档格式.docx
《Word宏应用实例Word文档格式.docx》由会员分享,可在线阅读,更多相关《Word宏应用实例Word文档格式.docx(30页珍藏版)》请在冰豆网上搜索。
![Word宏应用实例Word文档格式.docx](https://file1.bdocx.com/fileroot1/2022-11/29/f4386fe4-406e-4585-90e8-8407dff536fd/f4386fe4-406e-4585-90e8-8407dff536fd1.gif)
选择第二步中的宏名称,再单击“编辑”按钮。
然后便加载VisualBasic编辑器,我们可以看到所录制的宏自动生成的VisualBasic代码。
例如,在C:
\MyDocument中有200个Word文档,依次命名为“1.doc”,“2.doc”,“3.doc”,…“200.doc”,我们需要把文件格式改变为文本文件,即txt文件。
先以1.doc为例,录制一个宏,打开文档,另存为txt文件,再关闭该活动文档。
生成的VisualBasic代码如下:
SubMacro1()
ChangeFileOpenDirectory〃C:
\Mydocument〃
Documents.OpenFileName:
=〃1.doc〃
ActiveDocument.SaveAsFileName:
=〃1.txt〃,FileFormat:
=wdFormatText
ActiveWindow.Close
下一步便进行编辑,用一个循环语句依次打开各个文件,转化后再关闭。
代码如下:
dimi
fori=1to200
=i&〃.doc〃
=i&〃.txt〃,
FileFormat:
nexti
再次运行该宏,便可以轻松完成任务。
宏的作用由此可略见一斑
您正在看的Word教程是:
Word统计文字出现次数Word宏应用实例。
有的时候,我们要在一个文档中查找某个文本出现的总次数,也就是查找该文本的总数量,例如在一份违纪登记表格中查找一个姓名被记载的总数,类似的应用还有很多。
但Word没有这样的功能,我编写了一个宏,使Word具有统计单个文本总数量的功能。
下面介绍实现方法。
第二步在弹出的VisualBasic编辑器的代码窗口中完成以下内容:
SubFindText()
Text=InputBox("
请输入要查找的文本:
"
"
提示"
)
WithActiveDocument.Content.Find
DoWhile.Execute(FindText:
=Text)=True
tim=tim+1
Loop
EndWith
MsgBox("
当前文档查找到"
+Str(tim)+"
个"
+Text),48,"
完成"
EndSub
第三步录入完毕后,单击菜单[文件]→[关闭并返回到Micrcsoft后Word]。
第四步单击菜单[工具]→[自定义],单击“命令”选项卡,在“类别”中选择“宏”,将右边的“Normal.NewMacros.FindText”命令拖入“编辑”菜单中,并右击拖入的命令,在“命名”框中重命名为“查找文本数量”(如图)。
以后要统计文本数量时,只要单击[编辑]→[查找文本数量],按提示输入要查找的内容,单击[确定]就得到统计结果。
宏应用实例三:
将大量的Word文档.doc文件转换为.htm文件
2007-11-1514:
12
【分析】
我们知道,利用word可以将.doc文件转换为.htm文件,方法是:
在Doc文件编辑窗口中,选择菜单“文件/另存为”,在“保存类型”下列列表中选择“htmldocument”,按“保存”。
单独进行几个doc文件的转换还不算繁琐,但要大批量地进行转换工作时,比如:
按章节输入了一本书,形成了几十个.doc文件,要对这些文件进行转换成.htm文件的工作,这时,就不能采用手工一个个处理的笨办法了!
怎么实现呢?
请往下看。
【实现步骤】
假设大批量.doc文档所在目录为c:
\docs,文件名为1.1.doc,1.2.doc...
1、启动word
2、关闭当前默认打开的空文档
3、选择菜单“工具/宏/录制新宏”,输入宏名称“doctohtml”,按“确定”,进入了宏录制过程。
4、选择菜单“文件/打开”,选择目录c:
\docs,选择文件1.1.doc,按“确定”。
5、选择菜单“文件/另存为”,在“保存类型”下列列表中选择“htmldocument”,按“保存”。
6、选择菜单“文件/关闭”
7、选择菜单“工具/宏/停止录制”
8、选择菜单“工具/宏/宏”
9、在出现的“宏”窗口左部选中doctohtml,单击右边的按钮“编辑”
10、宏代码改造:
在出现的“MicrosoftVisualBasic”窗口中,可以看到如下的宏代码:
Subdoctohtml()
'
doctohtmlMacro
宏在99-11-8由xxx录制
ChangeFileOpenDirectory"
C:
\docs"
Documents.OpenFileName:
="
1.1.doc"
ConfirmConversions:
=False,ReadOnly:
=_
False,AddToRecentFiles:
=False,PasswordDocument:
PasswordTemplate:
"
Revert:
=False,WritePasswordDocument:
WritePasswordTemplate:
_
Format:
=wdOpenFormatAuto
ActiveDocument.SaveAsFileName:
1.1.htm"
FileFormat:
=100,LockComments:
False,Password:
AddToRecentFiles:
=True,WritePassword:
ReadOnlyRecommended:
=False,EmbedTrueTypeFonts:
=False,_
SaveNativePictureFormat:
=False,SaveFormsData:
=False,SaveAsAOCELetter:
False
ActiveDocument.Close
EndSub
对上面的代码进行改造,如下:
Subdoctohtml(myfileasstring)
IfFileExists(gwfile+"
.doc"
)Then
=myfile+"
.htm"
endif
并加入下面两个过程:
判断文件是否存在的函数
FunctionFileExists(ByValFileNameAsString)AsBoolean
OnErrorResumeNext
FileExists=Dir$(FileName)<
>
IfErr.Number<
0Then
FileExists=False
EndIf
OnErrorGoTo0
EndFunction
实际的转换函数
Submydoctohtml()
IfMsgBox("
确认执行转换doc到html文件吗?
vbOKCancel+vbDefaultButton2)=_
vbCancelThenGoToeeeddd
Calldoctohtml("
conver"
content"
qianyan"
fl"
1.1"
1.2"
...
1.10"
2.1"
3.1"
...
9.1"
eeeddd:
至此,全部代码改造完毕!
关闭“MicrosoftVisualBasic”窗口,回到Word窗口。
11、选择菜单“工具/宏/宏”,出现“宏”窗口,在左边的宏列表中,可以看到“mydoctohtml”一项,选中它,按右边的按钮“运行”,出现提示窗口“确认执行转换doc到html文件吗?
”,选择“确定”,批量转换工作开始了!
【后记】
上面应用宏的例子,看起来虽然步骤很多,其实做起来却非常简单,技术上关键在于2个环节:
第一、根据某个任务录制初始的宏;
第二、对初始的宏代码进行改造,已满足满足特殊的需求
Word宏命令巧妙应用一例
文章出处:
由于工作和学习的需要,笔者经常在网上阅读大量的信息,但由于网上的文字格式不一,所以笔者喜欢将它保存下来,并且用Word打开,精心设置其字体与背景后再阅读。
可这样每次阅读都需重新设置一番,挺麻烦的。
不久前看到了Word里的宏命令,仔细研究后发现,它可以帮我的大忙呢。
只需进行如下设置,以后这样的事情一个按钮就可以搞定。
1.任意打开一篇文挡,用鼠标任选一段文字。
2.执行“工具→宏→录制新宏”命令,打开如图1所示对话框。
3.在“录制宏”对话框的“宏名”文本框中输入宏的名称“读前设置”,在“将宏保存在”下拉列表框中选择“所有文档(normal.dot)”,然后单击〔工具栏〕按钮,打开图2所示“自定义”对话框。
4.在“自定义”对话框中选择“命令”选项卡,在“命令”列表框中将显示输入的宏名。
在该名称上按下鼠标左键将其拖到“常用”工具栏上,这样工具栏上就多了一个〔读前设置〕按钮了。
图1录制新宏
5.单击〔关闭〕进入宏的录制过程。
此时,“停止”浮动工具栏将出现在屏幕上,此工具栏上有两个按钮,左边是〔停止〕,右边是〔暂停〕(如图3)。
6.执行“格式→字体”命令,在打开的“字体”对话框中选择“字体”选项卡,在对话框的“中文字体”下拉列表中选择“宋体”,在“字形”下拉列表中选择“常规”,在“字号”下拉列表中选择“小四”,在“字体颜色”下拉列表中选择“灰度-80%”,单击〔确定〕。
7.执行“格式→背景→其他颜色”命令,在打开的“颜色”框中选择一种很浅的灰色,单击〔确定〕。
8.单击“停止”工具栏上的〔停止〕按钮结束录制。
图2“自定义”对话框
图3“停止”工具栏
这样,以后只要在网上阅读文字,在Word里打开,先用“Ctrl+A”全选后,单击“常用”工具栏上的宏按钮〔读前设置〕,就可以看到很舒服的文字效果了。
一些Word快捷编辑、特殊输入操作的域、宏应用实例代码2008-04-2608:
50本文大部分代码来自于顾经宇《其实你还没懂word》及其网站或论坛,部分代码经过本人修改,对于方便应用word很有好处。
具体应用,请查看原书(右键点击用迅雷下载pdf版本)。
发布于此,一为保留自用,二为共享他人。
标题中说是“域、宏应用实例代码”,实际上,把一些域的操作也编制成了宏,所以,以下全是宏代码。
至于word如何添加宏,不在本文叙述范围,请自行搜索网络。
1.打开文档时光标返回上次关闭时最后编辑处
SubAutoOpen()
AutoOpenMacro宏名称一定要是AutoOpen(大小写无所谓)
宏在2008-4-16由*****创建
Application.GoBack
2.无格式粘贴
Sub无格式粘贴()
无格式粘贴Macro
宏在2006-11-2由*****创建
Selection.PasteSpecialLink:
=False,DataType:
=wdPasteText,Placement:
wdInLine,DisplayAsIcon:
=False
3.匹配目标格式粘贴
Sub匹配目标格式粘贴()
匹配目标格式粘贴Macro,这个宏的功能与上一个好像是一样的,虽然代码不同,都是匹配目标格式粘贴
宏在2006-11-3由*****创建
Selection.PasteAndFormat(wdFormatSurroundingFormattingWithEmphasis)
4.删除连续两个换行符
Sub删除连续两个换行符()
删除连续两个换行符Macro
宏在2006-11-2由*****创建
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
WithSelection.Find
.Text="
^l^l"
.Replacement.Text="
.Forward=True
.Wrap=wdFindAsk
.Format=False
.MatchCase=False
.MatchWholeWord=False
.MatchByte=True
.MatchWildcards=False
.MatchSoundsLike=False
.MatchAllWordForms=False
EndWith
Selection.Find.ExecuteReplace:
=wdReplaceAll
Selection.MoveDownUnit:
=wdLine,Count:
=1
5.合并连续两个段落标记为一个
Sub替换连续两个段落标记为一个()
替换连续两个段落标记为一个Macro
^p^p"
^p"
6.替换换行符为段落标记
Sub替换换行符为段落标记()
^l"
7.段前空半行
Sub段前空半行()
段前空半行Macro
WithSelection.ParagraphFormat
.LineUnitBefore=0.5
8.段前空一行
Sub段前空一行()
段前空一行Macro
.LineUnitBefore=1
9.文献标号上标化
Sub文献标号上标化()
参考文献上标化Macro
Selection.HomeKeyUnit:
=wdStory
Selection.Find.Replacement.ClearFormatting
WithSelection.Find.Replacement.Font
.Superscript=True
EndWith
WithSelection.Find
\[[0-9,0-9,~~-\-\ ]@\]"
.MatchWildcards=True
Selection.Find.ExecuteReplace:
[[0-9,0-9,~~-\-\ ]@]"
10.箭头上方加文字
Sub箭头上方加文字()
箭头上方加文字Macro
Selection.Fields.AddRange:
=Selection.Range,Type:
=wdFieldEmpty,_
PreserveFormatting:
Selection.TypeBackspace
Selection.DeleteUnit:
=wdCharacter,Count:
Selection.TypeTextText:
eq\o(\s\do2(──────────→),\s\up5(敲击Delete键清