如何批量合并Excel文件

如何批量合并Excel文件,第1张

*** 作设备:戴尔电脑

*** 作系统:win10

*** 作软件:Excel2016

1将需合并的Excel文件放在同一个文件夹中。

2打开新建的Excel文件,按 Alt + F11 键,打开宏,选择视图→代码窗口。

3、将下面的代码拷贝粘贴到代码窗口中:

Sub sheets2one()

'定义对话框变量

Dim cc As FileDialog

Set cc = ApplicationFileDialog(msoFileDialogFilePicker)

Dim newwork As Workbook

Set newwork = WorkbooksAdd

With cc

If Show = -1 Then

Dim vrtSelectedItem As Variant

Dim i As Integer

i = 1

For Each vrtSelectedItem In SelectedItems

Dim tempwb As Workbook

Set tempwb = WorkbooksOpen(vrtSelectedItem)

tempwbWorksheets(1)Copy Before:=newworkWorksheets(i)

newworkWorksheets(i)Name = VBAReplace(tempwbName, "xls", "")

tempwbClose SaveChanges:=False

i = i + 1

Next vrtSelectedItem

End If

End With

Set cc = Nothing

End Sub

4、点击菜单“运行”—“运行子过程/用户窗体”。

5、在d出选择对话框中,选择要批量合并的Excel文件,点击“确定”即可合并为一个Excel工作簿。

6、点击“确定”后,运行合并即可。

需要具体例子才有针对性,VLOOKUP函数语法如下,希望对你有帮助

VLOOKUP函数:在表格或数值数组的首列查找指定的数值,并由此返回表格或数组当前行中指定列处的数值。当比较值位于数据表首列时,可以使用函数 VLOOKUP 代替函数 HLOOKUP。

VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)

Lookup_value 为需要在数组第一列中查找的数值。Lookup_value 可以为数值、引用或文本字符串。

Table_array 为需要在其中查找数据的数据表。可以使用对区域或区域名称的引用,例如数据库或列表。

如果 range_lookup 为 TRUE,则 table_array 的第一列中的数值必须按升序排列:…、-2、-1、0、1、2、…、-Z、FALSE、TRUE;否则,函数 VLOOKUP 不能返回正确的数值。如果 range_lookup 为 FALSE,table_array 不必进行排序。

• 通过在“数据”菜单中的“排序”中选择“升序”,可将数值按升序排列。

• Table_array 的第一列中的数值可以为文本、数字或逻辑值。

• 文本不区分大小写。

Col_index_num 为 table_array 中待返回的匹配值的列序号。Col_index_num 为 1 时,返回 table_array 第一列中的数值;col_index_num 为 2,返回 table_array 第二列中的数值,以此类推。如果 col_index_num 小于 1,函数 VLOOKUP 返回错误值值 #VALUE!;如果 col_index_num 大于 table_array 的列数,函数 VLOOKUP 返回错误值 #REF!。

Range_lookup 为一逻辑值,指明函数 VLOOKUP 返回时是精确匹配还是近似匹配。如果为 TRUE 或省略,则返回近似匹配值,也就是说,如果找不到精确匹配值,则返回小于 lookup_value 的最大数值;如果 range_value 为 FALSE,函数 VLOOKUP 将返回精确匹配值。如果找不到,则返回错误值 #N/A。

说明

• 如果函数 VLOOKUP 找不到 lookup_value,且 range_lookup 为 TRUE,则使用小于等于 lookup_value 的最大值。

• 如果 lookup_value 小于 table_array 第一列中的最小数值,函数 VLOOKUP 返回错误值 #N/A。

• 如果函数 VLOOKUP 找不到 lookup_value 且 range_lookup 为 FALSE,函数 VLOOKUP 返回错误值 #N/A。

可以通过更改excel代码来合并多个文件。

详细步骤:

1、新建一个文件夹。

2、将要合并的表格放到里面。

3、新建一个表格。

4、用excel打开。

5、右击Sheet1。

6、选择查看代码。

7、将下列代码复制到文本框中:

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

8、点击运行,即可成功合并。

参考资料:

百度百科-Microsoft Office Excel

以上就是关于如何批量合并Excel文件全部的内容,包括:如何批量合并Excel文件、我要把2张EXCEL表中同一个人的数据合并到一起,要用VLOOKUP急、excel如何将多个文件合并到一个文档中等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10159645.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存