用vba打开word模板并修改后保存
1、打开Word文件的 VBA编辑器,快捷键 Alt+F11,右击【ThisDocument】-》 【插入模块】;用VBA代码设置Word自动保存的步骤2、双击刚才插入的【模块1】,添加如下代码:Sub 自动备份()Dim NewTimeNewTime = Now + TimeValue(“00:05:10”)Dim myPath$, myName$myPath = ActiveDocument.PathmyName = Left$(ActiveDocument.Name, Len(ActiveDocument.Name) - 4)ChangeFileOpenDirectory myPathActiveDocument.SaveAs FileName:=myName & “_temp.doc”, ReadOnlyRecommended:=TrueActiveDocument.SaveAs FileName:=myName & “.doc”, ReadOnlyRecommended:=FalseApplication.OnTime NewTime, “自动备份”CreateObject(“Wscript.shell”).popup “备份成功,备份文件名为:” & myName & “_temp.doc”, 2, “提示!2秒后自动关闭!”End Sub用VBA代码设置Word自动保存的步骤用VBA代码设置Word自动保存的步骤3、双击【ThisDocument】并在其中 添加如下代码:Private Sub Document_Open()Call 自动备份End Sub用VBA代码设置Word自动保存的步骤4、默认自动备份时间为5min,如要调整请修改【模块1】中一句代码:如图中红框所示:时间格式为:HH : mm : ss用VBA代码设置Word自动保存的步骤5、保存代码及文件,且关闭word并重新打开,重新打开点击【选项】-》 【启用此内容】,如图:用VBA代码设置Word自动保存的步骤6、默认备份文件名为:【原文件名_temp,Lee.doc】且为只读,提示对话框2s后自动关闭。
备份效果显示如下:
VBA可以将excel单元格内容,替换word文档指定位置中的内容么?
当然可以,我以前写的,你可以参考一下:Private Sub CommandButton1_Click()On Error Resume NextDim iRow As Integer, myPath As StringDim wdApp As Word.Application, wdDoc As Word.Document, wdRange As Word.RangeDim 收文日期 As String, 标题 As String, 来文单位 As String, 文号 As String, 拟办情况 As String'--------------------------------------------------------------------------------------------------------Label3.Caption = "封面正在生成中..."'--------------------------------------------------------------------------------------------------------iRow = TextBox1.Text'获取待填写信息来文单位 = Cells(iRow, 3).Text来文单位 = Replace(来文单位, Chr(10), "^p") '将excel中的换行替换成word中的换行文号 = Cells(iRow, 4).Text文号 = Replace(文号, Chr(10), "^p") '将excel中的换行替换成word中的换行标题 = Cells(iRow, 5).Text标题 = Replace(标题, Chr(10), "^p") '将excel中的换行替换成word中的换行收文日期 = CStr(Year(Now())) & Cells(iRow, 6).Text拟办情况 = TextBox2.Text'--------------------------------------------------------------------------------------------------------myPath = ThisWorkbook.Path & "\封面\"'文件若已打开,则关闭已打开文件For Each wdDoc In Documents If InStr(1, wdDoc.Name, myPath & "(" & 收文日期 & ")" & 标题 & ".doc", 1) Then wdDoc.Close savechanges:=wdDoNotSaveChanges Exit For End IfNext wdDoc'--------------------------------------------------------------------------------------------------------Set wdDoc = CreateObject(myPath & "空白模板.doc") '打开wordwdDoc.Activate '--------------------------------------------------------------------------------------------------------'填写文档Set wdRange = wdDoc.Content '将word的文档内容赋予wdrangewdRange.Find.Execute FindText:="{来文单位}", ReplaceWith:=来文单位, Replace:=wdReplaceAllwdRange.Find.Execute FindText:="{文号}", ReplaceWith:=文号, Replace:=wdReplaceAllwdRange.Find.Execute FindText:="{收文时间}", ReplaceWith:=收文日期, Replace:=wdReplaceAllwdRange.Find.Execute FindText:="{内容摘要}", ReplaceWith:=标题, Replace:=wdReplaceAllwdRange.Find.Execute FindText:="{办公室拟办}", ReplaceWith:=拟办情况, Replace:=wdReplaceAll'--------------------------------------------------------------------------------------------------------'文档另存为wdDoc.SaveAs Filename:=myPath & "(" & 收文日期 & ")" & 标题 & ".doc"End Sub
如何用VBA查找word文档中的中文括号,并依次将找到的括号内的文字...
一、常见的“选中”方法: ü 全选(快捷键Ctrl+A):就是全部选中文档内的所有内容。
这所有内容包括:文字、表格、图形、图像等可见的和不可见的标记。
ü 按住Shift+Page Down从光标处向下选中一屏,Shift+Page Up从光标处向上选中一屏。
ü 按住Shift+左选中光标左边第一个字符,Shift+右选中光标右边第一个字符,Shift+上选中从光标处向上到同列的字符,Shift+右选中从光标处向下到同列的字符。
(注:此处的??、à、á、??表示:上、下、左、右光标键) ü Ctrl+Shift+á从光标向上选中光标所在的一段,Ctrl+Shift+??从光标向下选中光标所在的一段。
ü 扩展选中(快捷键F8):按一次打开扩展功能;再按一次选中光标所在的位置的单词(若是中文的话选中光标所在的后一个字);再按一次选中光标位置所在的一句;再按一次选中光标位置所在的一段落;再按一次则相当于全选。
取消扩展功能,按Esc键。
ü 把光标放到页面的左边,出现形如“??”,点击就选中一行。
上下拖到就选中若干行。
ü Alt+鼠标拖动:选中矩形区域。
ü 按住Shift选中多个对象(非嵌入型的),也可以用绘图工具栏第二个按钮的“选择对象”(“??”)来选择。
对于Word2003可以把光标放到任一位置,点右键/“选择格式相似的文本”功能,这个功能有点类似于F4,比较“另类”。
“相似”两字很值得玩味,多试几遍,其意自现。
二、“不常用”的“选中”方法 说他“不常用”并不真的是不常用,而是对于新手而言的不常用。
ü 通过菜单格式/样式和格式(Word2003版,别的版本类似),点击要选择的样式,点右边的下拉框,出现“选择所有XX实例”、“修改”、“删除”等。
此处的XX代表使用这种样式的段落是多少,点选“选择所有XX实例”就选中了所有应用了此样式的段落。
(注:对于规范的排版,这个是最好用的,可能我们只要四五个样式就把一篇小册子搞定。
) ü 不得不提到的替换(快捷键Ctrl+F):在查找内容中输入要选中的文字、或点格式、高级等设置,再点选突出显示所有在该范围找到的项目,在选查找全部、关闭,这就就选中了你可以想到的任意的内容。
这个看似简单,其实是所有技巧中伸缩度最大的一个。
三、一种类似于图形软件方面的选中技巧: 在Photoshop中,有一个命令叫“保存选区”非常好用,在Word中也可以找到类似的方法,这就是书签。
利用书签“存储选区”也是很好的方法,但要注意,他必须是连续的区域。
方法是:先选中要定义的区域,插入/书签,输入书签名,定义一个书签。
使用时:插入/书签,找到想选中的书签,点“定位”就选中了书签所代表的选择。
这个功能在后台VBA中也很好用,制定特定模板的首选。
。
。
。
。
。
。
百度的
Word 2007 宏怎么制作?、
创建宏 可以使用宏记录器录制一系列操作来创建宏 (宏:可用于自动执行任务的一项或一组操作。
可用 Visual Basic for Applications 编程语言录制宏。
),也可以在 Visual Basic 编辑器 (Visual Basic 编辑器:一种环境,用于编写新的 Visual Basic for Applications 代码和过程,并编辑已有的代码和过程。
Visual Basic 编辑器包括完整的调试工具集,用于查找代码中的语法、运行时和逻辑问题。
)中输入 Visual Basic for Applications (Visual Basic for Applications (VBA):Microsoft Visual Basic 的宏语言版本,用于编写基于 Microsoft Windows 的应用程序,内置于多个 Microsoft 程序中。
) 代码来创建宏。
也可同时使用两种方法。
可以录制一些步骤,然后添加代码来完善其功能。
录制步骤在“工具”菜单上,指向“宏”,然后单击“录制新宏”。
在“宏名”框中,键入宏的名称。
在“将宏保存在”框中,单击将保存宏的模板 (模板:是指一个或多个文件,其中所包含的结构和工具构成了已完成文件的样式和页面布局等元素。
例如,Word 模板能够生成单个文档,而 FrontPage 模板可以形成整个网站。
)或文档。
在“说明”框中,键入对宏的说明。
如果不希望将宏指定到工具栏 (工具栏:包含可用于执行命令的按钮和选项的栏。
要显示工具栏,请按 Alt 然后按 Shift+F10。
)、菜单 (菜单:单击菜单栏或其他工具栏上的菜单名时出现的命令的列表。
)或快捷键 (快捷键:功能键或组合键,例如 F5 或 Ctrl+A,可用来执行菜单命令。
存取键是另外一种组合键,例如 Alt+F,可以将焦点移至菜单、命令或控件。
),请单击“确定”开始录制宏。
若要将宏指定到工具栏或菜单,请单击“工具栏”,然后单击“命令”选项卡。
在“命令”框中,单击正在录制的宏,然后将其拖动到需指定到的工具栏或菜单。
单击“关闭”,开始录制宏。
要给宏指定快捷键,请单击“键盘”,在“命令”框中单击正在录制的宏,在“请按新快捷键”框中键入所需的快捷键,然后单击“指定”。
单击“关闭”,开始录制宏。
执行要包含在宏中的操作。
录制宏时,可以使用鼠标单击命令和选项,但不能选择文本。
必须使用键盘记录这些操作。
例如,可以使用 F8 来选择文本,并按 End 将光标移动到行的结尾处。
若要停止录制宏,请单击“停止录制”。
通过使用 Visual Basic for Applications在“工具”菜单中,指向“宏”,然后单击“宏”。
在“宏的位置”列表中,单击将保存宏的模板 (模板:是指一个或多个文件,其中所包含的结构和工具构成了已完成文件的样式和页面布局等元素。
例如,Word 模板能够生成单个文档,而 FrontPage 模板可以形成整个网站。
)或文档。
在“宏名”框中,键入宏的名称。
单击“创建”,打开“Visual Basic 编辑器”。
注释 如果为一个新的宏指定与现有 Microsoft Word 内置命令相同的名称,新的宏操作将代替现有的操作。
若要查看 Word 中的内置宏列表,请指向“工具”菜单上的“宏”,然后单击“宏”。
在“宏的位置”列表中,单击“Word 命令”。
用Excel 登录了说有同学的各科成绩导入用Word 做的模板
用word里面的邮件合并功能,首先:视图——工具栏——邮件合并,点出邮件合并工具栏,然后在工具栏上点击“打开数据源”,把你那个excel文件导入进来,把光标定位在姓名栏——插入域——姓名——插入——关闭,其他各科成绩也是定位在相应的科目,然后重复上面的工作,不同的是插入域不是“姓名”,而是相应各科成绩(例如:物理,数学……)。
全部插入完之后,查看合并数据,如果没有问题的话,就合并到新文档,把新文档打印出来就可以了。
跪求word小技巧
Excel 技巧 53例Excel 技巧 53例 (不知道论坛以前是否有朋友发过类似的帖子,只是在学这些内容对初学者有很大的帮助,所以拿来给大家共享)(一) 1、如何在已有的单元格中批量加入一段固定字符? 例如:在单位的人事资料,在excel中输入后,由于上级要求在原来的职称证书的号码全部再加两位,即要在每个人的证书号码前再添上两位数13,如果一个一个改的话实在太麻烦了,那么我们可以用下面的办法,省时又省力: 1)假设证书号在A列,在A列后点击鼠标右键,插入一列,为B列 ; 2)在B2单元格写入: ="13" & A2 后回车; 3)看到结果为 13xxxxxxxxxxxxx 了吗?鼠标放到B2位置,单元格的下方不是有一个小方点吗,按着鼠标左键往下拖动直到结束。
当你放开鼠标左键时就全部都改好了。
若是在原证书号后面加13 则在B2单元格中写入:=A2 & “13” 后回车。
2、如何设置文件下拉窗口的最下面的最近运行的文件名个数? 打开“工具”,选“选项”,再选“常规”,在“最近使用的文件清单”下面的文件个数输入框中改变文件数目即可。
若不在菜单中显示最近使用的文件名,则将“最近使用的文件清单”前的复选框去掉即可。
3、在EXCEL中输入如“1-1”、“1-2”之类的格式后它即变成1月1日,1月2日等日期形式,怎么办? 这是由于EXCEL自动识别为日期格式所造成,你只要点击主菜单的“格式”菜单,选“单元格”,再在“数字”菜单标签下把该单元格的格式设成文本格式就行了。
4、在EXCEL中如何使它象WORD一样的自动定时保存文件? 点击“工具”菜单“自动保存”项,设置自动保存文件夹的间隔时间。
如果在“工具”菜单下没有“自动保存”菜单项,那么执行“工具”菜单下“加载宏...”选上“自动保存”,“确定”。
然后进行设置即可。
5、用Excel做多页的表格时,怎样像Word的表格那样做一个标题,即每页的第一行(或几行)是一样的。
但是不是用页眉来完成? 在EXCEL的文件菜单-页面设置-工作表-打印标题;可进行顶端或左端标题设置,通过按下折叠对话框按钮后,用鼠标划定范围即可。
这样Excel就会自动在各页上加上你划定的部分作为表头。
6、在Excel中如何设置加权平均? 加权平均在财务核算和统计工作中经常用到,并不是一项很复杂的计算,关键是要理解加权平均值其实就是总量值(如金额)除以总数量得出的单位平均值,而不是简单的将各个单位值(如单价)平均后得到的那个单位值。
在Excel中可设置公式解决(其实就是一个除法算式),分母是各个量值之和,分子是相应的各个数量之和,它的结果就是这些量值的加权平均值。
7、如果在一个Excel文件中含有多个工作表,如何将多个工作表一次设置成同样的页眉和页脚?如何才能一次打印多个工作表? 把鼠标移到工作表的名称处(若你没有特别设置的话,Excel自动设置的名称是“sheet1、sheet2、sheet3.......”),然后点右键,在弹出的菜单中选择“选择全部工作表”的菜单项,这时你的所有操作都是针对全部工作表了,不管是设置页眉和页脚还是打印你工作表。
8、EXCEL中有序号一栏,由于对表格进行调整,序号全乱了,可要是手动一个一个改序号实在太慢太麻烦,用什么方法可以快速解决? 如果序号是不应随着表格其他内容的调整而发生变化的话,那么在制作EXCEL表格时就应将序号这一字段与其他字段分开,如在“总分”与“排名”之间空开一列,为了不影响显示美观,可将这一空的列字段设为隐藏,这样在调整表格(数据清单)的内容时就不会影响序号了。
9、用Excel2000做成的工资表,只有第一个人有工资条的条头(如编号、姓名、岗位工资.......),想输出成工资条的形式。
怎么做? 这个问题应该这样解决:先复制一张工资表,然后在页面设置中选中工作表选项,设置打印工作表行标题,选好工资条的条头,然后在每一个人之间插入行分页符,再把页长设置成工资条的高度即可。
使用自定义方式重装了一遍中文office97,Excel的打印纸选项中只有A4一种,怎么办? 随便安装一个打印机驱动程序就可以了。
10、在Excel中小数点无法输入,按小数点,显示的却是逗号,无论怎样设置选项都无济于事,该怎么办? 这是一个比较特殊的问题,我曾为此花了十几个小时的时间,但说白了很简单。
在Windows的控制面板中,点击“区域设置”图标,在弹出的“区域设置属性”对话面板上在“区域设置”里选择“中文(中国)”,在“区域设置属性”对话面板上在“数字”属性里把小数点改为“.”(未改前是“,”),按“确定”按钮结束。
这样再打开Excel就一切都正常了。
11、如何快速选取特定区域? 使用F5键可以快速选取特定区域。
例如,要选取A2:A1000,最简便的方法是按F5键,出现“定位”窗口,在“引用”栏内输入需选取的区域A2:A1000。
12、如何快速返回选中区域? 按Ctr+BacksPae(即退格键)。
13、如何快速定位到单元格? 方法一:按F5键,出现“定位”对话框,在引用栏中输入欲跳到的单元格地址,单市“确定”按钮即可。
方法二:单击编辑栏左侧单元格地址框,输入单元格地址即可。
14、“Ctrl+*”的特殊功用? ...
转载请注明出处51数据库 » vba word模板 查找替换