电脑教程
位置:首页>> 电脑教程>> office教程>> Excel批量获取指定目录下文本文件内容VBA代码

Excel批量获取指定目录下文本文件内容VBA代码

  发布时间:2023-10-21 02:10:54 

标签:内容,批量,文件名,获取,Excel函数

今天帮一位网友弄的,A列为文件名,B列为对应的文本文件内容。此代码只适用于Excel2003及以下版本,因FileSearch方法被微软 * 了。
Sub listfile()
”””””””””””””””””””””””
‘ 批量获取指定目录下所有文本文件名和内容 ‘
‘ ‘
”””””””””””””””””””””””
Dim fs, fso, fl
Dim mypath As String
Dim theSh As Object
Dim theFolder As Object
Dim strtmp As String
Application.ScreenUpdating = False
On Error Resume Next
Set fso = CreateObject("Scripting.FileSystemObject") ‘设置搜索路径
Set theSh = CreateObject("shell.application")
Set theFolder = theSh.BrowseForFolder(0, "", 0, "")
If Not theFolder Is Nothing Then
mypath = theFolder.Items.Item.Path
End If
‘搜索开始
Set fs = Application.FileSearch
With fs
.NewSearch
.SearchSubFolders = True ‘搜索子目录
.LookIn = mypath ‘搜索路径
.FileName = "*.txt" ‘搜索文件类型为txt
If .Execute(SortBy:=msoSortByFileName) = 0 Then
C = .FoundFiles.Count ‘统计搜索到的文件个数
For i = 1 To C
strtemp = .FoundFiles(i) ‘设置临时文件
n = InStrRev(strtemp, "\") ‘获取文件路径长度(不包括文件名)
‘获取文件名及扩展名
strfilename = Replace(strtemp, Left(strtemp, n), "")
‘从A2单元格开始输出格式为:文件名
Cells(i + 1, 1) = Left(strfilename, Len(strfilename) – 4)
Set fl = fso.opentextfile(strtemp, 1)
strtmp = fl.readall ‘读取文本内容
Range("b" & i + 1) = strtmp ‘B2开始写入内容
fl.Close
Next
Else
MsgBox "该文件夹里没有符合要求的文件!"
End If
End With
Set fs = Nothing
Application.ScreenUpdating = True
End Sub

0
投稿

猜你喜欢

  • 在阅读文本的过程中,如果觉得批注影响了阅读怎么办呢?接下来向大家介绍删除批注的方法。方法/步骤1、双击,打开要删除批注的文档  
  • 首先,选中数据结果的单元格并右击,弹出的菜单中选择“设置单元格格式”。然后,切换到“数字”选项,在“分类”中选择“数值”,从右边的选项中选择
  • 使用公式将单元格区域中的数据颠倒过来。例如,下图所示工作表中的单元格区域Data(即A1:A7),使用公式将原来处于区域Data中第一个单元
  • 在使用word工作表的时候,有时想把文档设置成首页不显示页码,从第二页开始显示页码,该如何操作呢?那么下面就由小编给大家分享下word设置首
  • word是我们目前个人电脑中使用最普遍的文字处理工具,但是在一些专业的排版软件中,却需要使用TXT格式进行导入。这样则经常需要将Word文档
  • 函数说明判断值是否为空白单元格函数语法ISBLANK(value)ISBLANK(需要进行检验的数值)参数说明Value:为需要进行检验的数
  • excel数字分隔符怎么用?有些数据格式需要使用分隔符来分割,比如电话,或者日期,今天我们来介绍两种使用数字分隔符的方法,都很简单,需要的朋
  • Win10系统可以说是最常用的系统之一,但有不少小伙伴反应说在玩游戏的时候经常弹出ms-gamingoverlay的选项,那么碰到这种情况应
  • excel表格怎么制作dat格式数据文件?excel表格中想要制作一个dat数据文件,该怎么制作呢?下面我们就来看看详细的教程,需要的朋友可
  • 方法一、直接发送的桌面快捷方式启动。用鼠标从“我的电脑”中将Excel应用程序拖到桌面上,然后从快捷菜单中选择“在当前位置创建快捷方式”,以
  • Office 2010是人们常用的办公软件,不过激活Office 2010时偶尔会出现一些错误代码问题,今天我们就来分享一下office 2
  • 在excel表格中如何在数据前或数据后加入0?很多朋友都不是很清楚,不会的朋友可以参考本文,希望这篇文章能对大家有所帮助在日常工作中,总会接
  • Excel2007的数据工具,一般就在数据选项卡里面,如果没有,可以使用下面的方法将其显示出来。方法如下:先点击“开始”菜单,找到如下图的位
  • Excel2010自定义单元格序列方法①打开Excel,单击文件–选项。Excel2010②在高级标签中,拉动滚动条,然后单击编辑自定义列表
  • 在Word文档中有一个“带圈字符”功能,使用该功能我们可以实现在方框,圆圈,三角形等图形中输入字符的效果。同时,在设置带圈字符时我们还可以点
  • 很多软件为了方便用户操作,提供了对Office的嵌入工具栏。但有些工具栏我们不一定需要,既浪费界面空间,又浪费系统资源。更有甚者,其工具栏很
  • 现在安装Win10系统的方法有很多种,不少小伙伴第一时间想到是用U盘安装,其实除了此方法,360系统重装大师软件也安装win10系统,那么要
  • 本篇关于介绍在Word中处理文档和网页使用的快捷键。·创建、查看和保存文档Ctrl+N创建与当前或最近使用过的文档类型相同的新文档。Ctrl
  • 图例是图表中各种符号和颜色所表示内容的说明,有助于查看图表;数据标签是将系列的数据显示出来,下面具体介绍在excel2013中添加图例和数据
  • 在书籍制作中,书籍中的许多文档对象都必须使用相同的字体、段落、边框等格式进行统一设置,如文章标题、章节标题、正文内容等。下面给大家分享Wor
手机版 电脑教程 asp之家 www.aspxhome.com