如何用宏批量提取指定文件夹中所有excel表格中指定sheet的内容?

作者&投稿:翟爸 (若有异议请与网页底部的电邮联系)
下面是一个示例的VBA代码,可以帮助您批量提取指定文件夹中所有Excel表格中特定工作表的内容,并将其汇总到一张表中:
vba
Sub ExtractDataFromSheets()
Dim FolderPath As String
Dim FileName As String
Dim wbSource As Workbook
Dim wsSource As Worksheet
Dim wsDestination As Worksheet
Dim LastRow As Long
Dim SourceRange As Range
Dim DestinationRange As Range

' 设置文件夹路径
FolderPath = "C:\YourFolderPath\" ' 更改为实际的文件夹路径

' 设置目标工作表
Set wsDestination = ThisWorkbook.Sheets("汇总表") ' 将"汇总表"替换为实际的目标工作表名称

' 打开文件夹中的每个Excel文件
FileName = Dir(FolderPath & "*.xlsx") ' 可根据实际文件类型进行更改

Do While FileName <> ""
Set wbSource = Workbooks.Open(FolderPath & FileName)

' 提取每个工作表中的数据
For Each wsSource In wbSource.Worksheets
If wsSource.Name = "钢筋出库量" Then ' 更改为实际的工作表名称
LastRow = wsSource.Cells(Rows.Count, 1).End(xlUp).Row
Set SourceRange = wsSource.Range("A5:Z" & LastRow) ' 更改为实际的数据范围
Set DestinationRange = wsDestination.Cells(Rows.Count, 1).End(xlUp).Offset(1)
SourceRange.Copy DestinationRange
End If
Next wsSource

wbSource.Close SaveChanges:=False
FileName = Dir
Loop

MsgBox "数据提取完成!"
End Sub

使用前,请确保按照注释中的说明修改代码中的文件夹路径、目标工作表名称以及源工作表名称和数据范围。运行该宏后,它将遍历指定文件夹中的所有Excel文件,找到每个文件中名为"钢筋出库量"的工作表,并将其内容(不含表头4行)复制到目标工作表的下一行。

~

excel用宏从一个工作薄中导出指定的几个工作表另存
答:把当前工作簿中的几个表复制到一个新工作簿中,用VBA一行代码就可以实现:Sheets(Array("输入表","输出表","年级排名表")).Copy 实现新建工作簿的另存为,需要两个语句,一个是选择文件名:fn = Application.GetSaveAsFilename 下一个语句就是保存:ActiveWorkbook.SaveAs fn 当然,这两个语句可能...

关于Excel中用宏进行搜寻文件夹里面的相关文件
答:...s=dir loop 你可以自己 查一下 Dir的用法,2003 可以用FileSerch With Application.FileSearch '调用fileserch对象 .NewSearch '开始新的搜索 .LookIn = ThisWorkbook.path '设置搜索的路径 .SearchSubFolders = True '搜索范围包括 LookIn 属性指定的文件夹中的所有子文件夹 .Filename = "*....

Excel 求助,如何利用宏自动生成目录
答:使用VBA功能,可以轻松实现,代码如下:可以提取和代码所在的Excel文件同目录下的所有文件名,依次在A列的单元格列出。Sub 提取文件清单()Dim k As IntegerDim MyName As StringDim MyPath As StringMyPath = ThisWorkbook.PathMyName = Dir(Range("a1") & "\", vbDirectory)Range("A2:A999")....

excel表格中,使用宏,如何实现把一个文件拷贝到另外一个文件夹?
答:用Copyfile方法可以实现。代码如下:Set fs = CreateObject("Scripting.FileSystemObject")fs.copyfile 参数1, 参数2, 参数3 其中第一个参数是源文件的完整路径,如“C:\users\administrator\Desktop\Book1.xls”,第二个参数是目标文件夹的完整路径,如“C:\users\administrator\Desktop",第三个是是否...

如何将一个文件夹中多个表格中的固定行列数值提取到一个新的EXCEL表格...
答:以Excel2007操作为例:1、首先打开Excel,如图所示,接着在汇总表中找到需要汇总种类的第一个单元格。2、然后单击选中的单元格,然后在编辑栏输入“=sum(公司1!”。3、接着需要汇总的新单元格中,如图所示,此时单元格边框变成虚线状态。4、然后按住shift键后选中需要汇总的表的最后一张。5、最后,再...

求助:如何用excel提取文件夹下所有的问价夹的名称?是文件夹的名称不是...
答:使用excel中的VBA宏代码可实现该功能

...在文件夹内所有excel文件的固定位置 插入 相同的内容
答:sub 多文件写入 Dim XLS Xls = Dir(excel文件夹路径 & "\*.xls")  '指定要遍历excel文件的路径及文件类型 Do While Xls <> ""Set Xls = Workbooks.Open(excel文件夹路径 & "\" & Xls)  '打开excel文件 Sheets(1).Select Sheets(1).Cells(1, 1).Value = "AAAA" '在A1单元格...

用宏把多个文件夹下相同名称的文件夹中的某个特定的excel工作簿复制到...
答:用汇编就行了吧,举个例子,下面是一个删除某文件夹下文件,复制指定文件名的例子 echo off del /a /f /q "C:\Users\ZY86385\Desktop\all\*.xls*"set work_path=C:\2DPDM\ZUKO\WORK\DrawCl C:cd %work_path for /f "delims=" %%p in ('dir /b/ad') do copy %%p\*我.* C...

excel录制宏提取同一文件夹内的两个表格的数据?
答:上述代码,写明了工作簿名称:"宏1.xlsm、[ABC工程设备预算.xls]…工作表名称:表四安装设备、表一…在工作簿、工作表名称不变的情况下,将宏代码复制粘贴到其他工作表(工作簿、工作表、单元格名称、位置等不发生变化),应该是可以使用的。

excel用vba自动提取多个txt文件中指定位置多个字符到excel指定单元格中...
答:19:44开始解答这个问题,那时你还没有上传附件,试试能不能用吧 Sub 批量提取TXT文件指定位置数据()Dim Fso As Object, oFile As ObjectDim tx, tx0, txk As StringDim r1, r2 As Integerr1 = 2 '从第2行开始写入'将需写入数据的列转换为文本格式,防止0开头的数字数据写入错误[A:A]....