1、新建一个文件夹、将要合并的表格放到里面、新建一个表格、用excel打开、右击Sheet1
2、选择查看代码(PS:excel有着一项,WPS没有)
3、将下列代码复制到文本框中:
Sub 合并当前目录下所有工作簿的全部工作表()
Dim MyPath, MyName, AWbName
Dim Wb As workbook, WbN As String
Dim G As Long
Dim Num As Long
Dim BOX As String
ApplicationScreenUpdating = False
MyPath = ActiveWorkbookPath
MyName = Dir(MyPath & "\" & "xls")
AWbName = ActiveWorkbookName
Num = 0
Do While MyName <> ""
If MyName <> AWbName Then
Set Wb = WorkbooksOpen(MyPath & "\" & MyName)
Num = Num + 1
With Workbooks(1)ActiveSheet
Cells(Range("B65536")End(xlUp)Row + 2, 1) = Left(MyName, Len(MyName) - 4)
For G = 1 To SheetsCount
WbSheets(G)UsedRangeCopy Cells(Range("B65536")End(xlUp)Row + 1, 1)
Next
WbN = WbN & Chr(13) & WbName
WbClose False
End With
End If
MyName = Dir
Loop
Range("B1")Select
ApplicationScreenUpdating = True
MsgBox "共合并了" & Num & "个工作薄下的全部工作表。如下:" & Chr(13) & WbN, vbInformation, "提示"
End Sub
4、点击运行、一段时间(取决于表格的大小和多少)后,合并完成了。
具体 *** 作步骤如下:
1、首先,在桌面上找到并打开Excel表格。如下图所示,然后进入下一步。
2、其次,在excel页面顶部菜单栏中,点击方方格子,然后选择工作表-汇总拆分。如下图所示,然后进入下一步。
3、接着,完成上述步骤后,选择“汇总大师”选项。如下图所示,然后进入下一步。
4、然后,在d出页面中,单击左侧选项栏中的“多薄提取到一表”选项。如下图所示,然后进入下一步。
5、随后,在d出窗口中,单击“开始”按钮。如下图所示,然后进入下一步。
6、接着,在d出窗口中,单击“添加文件”按钮。如下图所示,然后进入下一步。
7、然后,选择多个Excel文件以提取指定的单元格数据。如下图所示,然后进入下一步。
8、选好后,单击下面的“打开”按钮。如下图所示,然后进入下一步。
9、接着,在d出窗口中,选择“区域”和“提取数值”以提取指定的单元格数据。如下图所示,然后进入下一步。
10、然后,完成上述步骤后,单击“开始”。如下图所示,然后进入下一步。
11、随后,完成上述步骤后,提示提取成功,单击“确定”即可。如下图所示,然后进入下一步。
12、最后,在此界面中,可以看到指定的单元格数据已成功从多个Excel文件中提取。如下图所示。
在内部共享的EXCEL表的A1处(或想关联的单元格处)填上公式
=['f:\某文件夹\资料xls']9月份资料!A1(或想关联的单元格处)
拖动即可
注:[]内为公司内部共享到电脑F盘处的路径,应该包括网络路径。
要更新时,打开内部共享那张表就有提示
用搜索功能
举个例子:在D盘我有很多的word文件,都要集中起来,可以用搜索功能,包含文字
里面输入“
doc”
范围(D:盘)的就可以搜索到对应的word文件,然后全选放到另外一个新建的文件夹里面就行,不需要备份的话直接剪贴。
A工作簿里的VBA 编码
dim arr(65535),brr(65535)
xlsFile1="D:\b\bxls" //扩展名为xls,b文件夹在D盘
Do
If InStr(1, xlsFile, "a") = 0 Then
ActiveWorkbookSheets("Sheet1")select //a工作簿的表1
for i=1 to 65535
arr(i)=ActiveWorkbookSheets("Sheet1")cells(i,1)value
brr(i)=ActiveWorkbookSheets("Sheet1")cells(i,1)value
next
WorkbooksOpen Filename:=adr1 & xlsFile1 //打开B工作簿
Windows(xlsFile1 & "xls")Activate
ApplicationDisplayAlerts = true
for i=1 to 65535
ActiveWorkbookSheets("Sheet1")cells(i,1)value=arr(i)
ActiveWorkbookSheets("Sheet1")cells(i,1)value=brr(i)
next
ApplicationDisplayAlerts = False
ActiveWorkbookSave
WorkbooksClose
Loop Until Len(xlsFile) = 0
懒得打。。自己看
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)