问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何用VBA打开固定文件下所有WORD文件,自动运行宏后打印。

发布网友 发布时间:2022-05-13 18:02

我来回答

2个回答

热心网友 时间:2023-10-19 11:47

处理思路为:制作一个Doc文档,里边包含处理过程的代码。需要使用时,将这个doc文档置于需要处理文档所在文件夹中,执行代码即可自动完成。如此即可达到一劳永逸的效果。

为便于使用,建议此doc文档中放置一个命令按钮(CommandButton,可标记为“开始执行”),一个可供显示处理过的文档名称的列表框(ListBox),单击命令按钮执行需要的处理过程,列表显示文档名,过程结束进行相应的提示。

假设您已经置入了CommandButton和ListBox,请双击CommandButton进入代码编辑窗口,将以下代码复制进去,补充完整您需要的一些操作代码即告完成。

'下面是需要复制的代码:

On Error GoTo handerr:
'请先单击代码编辑窗口的菜单“工具/引用”勾选“Microsoft Scripting Runtime”
'否则将无法使用本代码块,放弃使用 Dir 函数是为了不受版本影响

Dim Str1 As String
Dim Fso As New FileSystemObject
Dim Fl As File
Dim Fd As Folder
Dim odoc As Word.Document

If MsgBox("您确实需要开始执行此过程吗?", vbQuestion + vbYesNo, "提示") = vbNo Then
Exit Sub
End If

'清除显示已经处理的文档名列表,如果不需要,把下面一句删除
ListBox1.Clear

Set Fd = Fso.GetFolder(ThisDocument.Path)

'处理每一个文档
For Each Fl In Fd.Files
Str1 = LCase(Fl.Name)

If InStr(1, Str1, ".doc") > 0 And InStr(1, Str1, "~") = 0 And Str1 <> ThisDocument.Name Then
'如果不需要显示处理的文档名列表,请删除下面一句
ListBox1.AddItem Fl.Name

Set odoc = Documents.Open(CStr(Fl))
odoc.Activate

'下面填写您需要在打开文档后的一些处理动作,如设置页眉,插入图片等

'上面填写您需要处理的一些动作
odoc.Save '保存此文档
odoc.PrintOut '打印此文档
odoc.Close '关闭此文档
End If
Next Fl

'如果上面删除了列表显示语句,请把下面4行删除,再用最后一行进行操作结束
If ListBox1.ListCount > 0 Then
MsgBox "过程执行完毕!" & vbCrLf & "列表中的" & ListBox1.ListCount & "个文档等待打印机打印。", vbInformation, "提示"
Else
MsgBox "过程结束,没有任何文档可操作!", vbInformation, "提示"
End If

'msgbox "过程结束!",vbInformation,"提示"

Exit Sub

handerr:
MsgBox Err.Description, vbInformation, "错误提示"追问您好,谢谢您热心的回答,您再帮我看看行么?

做完COMMANDBUTTON1T和LISTBOX1,再双击COMMANDBUTTON1后,所作步骤如下:

我把我的代码从以前的: ActiveDocument.Sections(1).Range.Select
……………………
到: False, PrintZoomColumn:=0, PrintZoomRow:=0, PrintZoomPaperWidth:=11907, _
PrintZoomPaperHeight:=16839

追答您把这一行(odoc.PrintOut '打印此文档)删除掉吧,这一句是默认打印的意思,你复制进去的最后一句就是自定义打印。

您用一个文件夹少放两个文件试验一下行不行,如果不行,可传一份需要处理的文档(可能透露机密的文字自己用其它无所谓的文字替换掉,能够表示格式就行)给我506991374@qq.com帮你处理一下,邮件中说明您要做的详细动作。

热心网友 时间:2023-10-19 11:48

Sub printwords()
Dim filedir As String
Dim FileName As String
filedir = "C:\Documents and Settings\BATIC02.BANDO-0616CC6F0\桌面\yu\"
FileName = Dir(filedir & "*.doc")
Do While FileName <> ""
Documents.Open (FileName)
ActiveDocument.PrintOut
ActiveDocument.Close False
FileName = Dir
Loop
End Sub
试试这个代码?
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
打印机硒鼓安装方法及步骤 如何安装新硒鼓? 我现在很困惑该不该和女友继续发展下去 电脑上字体怎么安装方法简单易行的字体安装步骤及技巧 网页字体显示不出.怎么办? 如何添加电脑上没有的字体解决电脑字体限制增加字体选择多样性_百度知 ... 不有效字体文件 电脑字体识别不了 梦见身上煤炭黑的长辈给我钥匙的预兆 株洲最值得一去的古镇 Excel Vba 顺序操作文件夹下所有文件 数学日记两则,100字。(四年级下) vba提取多层文件夹的*.xls文件,根据获取到的文件名及路径逐个打开*.xls文件,去判断某几列有多少个数据? 云浮都杨科目三考场几时开始复考? 罗定科目三可以模考吗? 在罗定考小车驾驶证考了科目一后不想考怎么办? K-SHOW纳米喷雾补水仪K7,.一级代理拿货多少钱一台? 罗定科目三不交保险费能过不? 罗定科目三跟科目四能一天考吗 罗定有考c1科目二和科目三考场吗? 科目三考试没过,要补考的话要等多久? 网上哪里能买到纸尿片?注意,是片不是裤。 科目三补考要等多长时间? 万宝乐纸尿片好吗???为什么百度不到? 科目三没过要多长时间在约考呢 我用的布拉布牌子的纸尿裤在网上怎么搜不到? 爹地宝贝自然优选丝肽蛋白纸尿裤怎么网上搜不到?是不是伪冒品? 科目三考试没考过,真的需要等10天以后才能预约吗 为什么在河南周口郸城县的鑫聚婴母婴店购买的安儿乐新生爱尿不湿网上查不到? 昆明科目三考试第一次挂了,第二次要等20天吗? 用vba如何查找文件夹下的所有excel文件 关于门的数学日记。100字左右。 vba读取指定文件夹的所有文件夹 数学日记100字三年级四篇要提目 为什么说神话粉丝厉害 为什么神话的粉丝神话创造是韩国最有团魂的粉丝 因为最近刚喜欢上神话组合,所以想问问神话组合在亚洲人气怎么样? 为什么中国梦之声的NC这么多那!!骂神话找抽吧!! 那么神话为什么有这样大的魅力能够广泛流传而经久不衰呢? 为什么神话收视率那么高 归国四子一直演绎着神话,回国后的他们,为何能够这么好? 神话成立23年陷入危机!Eric罕见动怒,粉丝们对此有何表示? 神话跟飞轮海哪家人气旺 全世界粉丝最多的组合是东方神起吗? 现在神话组合在韩国以及海外的人气怎么样呢?~(客观的来看) 神话组合早期人气最高的是junjin但是后来人气为什么下降了?要求详细说明,不知道的别瞎说啊。知道 有人说神话好吗 火之所以那么受神话传说重视的原因是什么? 杨梓玥名字的意思是什么 2020年8!月11日出生取名杨梓玥可以吗?