批量删除一个文件夹下所有Word文件的页眉和页脚.docx_第1页
批量删除一个文件夹下所有Word文件的页眉和页脚.docx_第2页
批量删除一个文件夹下所有Word文件的页眉和页脚.docx_第3页
批量删除一个文件夹下所有Word文件的页眉和页脚.docx_第4页
批量删除一个文件夹下所有Word文件的页眉和页脚.docx_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

批量删除一个文件夹下所有Word文件的页眉和页脚* , * Created By SHOUROUExcelHome 2007-12-26 6:12:17 仅测试于System: Windows NT Word: 11.0 Language: 2052 ? 0292The Code CopyIn ThisDocument-ThisDocument * , Option Explicit Sub Example() 此代码功能为列出指定文件夹中所有选取的WORD文件全路径名 Dim myDialog As FileDialog, oDoc As Document, oSec As Section Dim oFile As Variant, myRange As Range On Error Resume Next 定义一个文件夹选取对话框 Set myDialog = Application.FileDialog(msoFileDialogFilePicker) With myDialog .Filters.Clear 清除所有文件筛选器中的项目 .Filters.Add 所有 WORD 文件, *.doc, 1 增加筛选器的项目为所有WORD文件 .AllowMultiSelect = True 允许多项选择 If .Show = -1 Then 确定 For Each oFile In .SelectedItems 在所有选取项目中循环 Set oDoc = Word.Documents.Open(FileName:=oFile, Visible:=False) For Each oSec In oDoc.Sections 文档的节中循环 Set myRange = oSec.Headers(wdHeaderFooterPrimary).Range myRange.Delete 删除页眉中的内容 myRange.ParagraphFormat.Borders(wdBorderBottom).LineStyle = wdLineStyleNone 段落下边框线 Set myRange = oSec.Footers(wdHeaderFooterPrimary).Range myRange.Delete 删除页脚中的内容 Next oDoc.Close True Next End If End With End Sub - 在VBA遍历文件夹和子文件夹中所有文件,常用两种方法,一种是使用VBA的filesercth对象,另外一种是使用FileSystemObject(windows文件管理工具)和递归方法。兰色对代码进行了注解,希望对大家有所帮助 第一种方法:使用filesearch对象 Sub mysearch() Dim fs, i, arr(1 To 10000) Set fs = Application.FileSearch 设置一个搜索对象 With fs .LookIn = ThisWorkbook.Path & / 设置搜索路径 .Filename = *.xls 要搜索文件名和类型 .SearchSubFolders = True 是否需要搜索子文件夹 If .Execute 0 Then 如果找不到文件 MsgBox There were & .FoundFiles.Count & _ file(s) found. 显示文件找不到 For i = 1 To .FoundFiles.Count 通过循环把所有搜索到的文件存入到数组中 arr(i) = .FoundFiles(i) Next i Sheets(1).Range(A1).Resize(.FoundFiles.Count) = Application.Transpose(arr) 把数组内的路径和文件名放在单元格中 Else MsgBox There were no files found. End If End With End Sub 第二种方法:引用FileSystemObject对象 注意:要使用FileSystemObject对象,需要首先引用一下,具体方法,VBE-工具-引用-找到miscrosoftscription runtime项目并选中 代码及注释: Dim ArrFiles(1 To 10000) 创建一个数组空间,用来存放文件名称 Dim cntFiles% 文件个数 Public Sub ListAllFiles() Dim strPath$ 声明文件路径 Dim i% Set fso = CreateObject(Scripting.FileSystemObject) Dim fso As New FileSystemObject, fd As Folder 创建一个FileSystemObject对象和一个文件夹对象 strPath = ThisWorkbook.Path & 设置要遍历的文件夹目录 cntFiles = 0 Set fd = fso.GetFolder(strPath) 设置fd文件夹对象 SearchFiles fd 调用子程序查搜索文件 Sheets(1).Range(A1).Resize(cntFiles) = Application.Transpose(ArrFiles) 把数组内的路径和文件名放在单元格中 End Sub Sub SearchFiles(ByVal fd As Folder) Dim fl As File Dim sfd As Folder For Each fl In fd.Files 通过循环把文件逐个放在数组内 cntFiles = cntFiles + 1 ArrFiles(cntFiles) = fl.Path Next fl If fd.SubFolders.Count = 0 Then Exit Sub SubFolders返回由指定文

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论