当前位置:首页教育技巧excel技巧excel公式与函数

带密码的excel表格文件怎么合并

2024-09-28 09:35:02


1.如何快速的

利用VBA方法:

1. 将需合并的excel文件放在同一个文件中,并这个文件中新建一个excel文件

2. 打开新建的excel文件,按alt + f11建,打开宏,新建一个模组,将下面的代码拷贝进去,并保存。

Sub Books2Sheets()

'定义对话框变量

Dim fd As FileDialog

Set fd = Application.FileDialog()

'新建一个工作簿

Dim newwb As Workbook

Set newwb = Workbooks.Add

With fd

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 = Workbooks.Open(vrtSelectedItem)

'复制工作表

tempwb.Worksheets(1).Copy Before:=newwb.Worksheets(i)

'把新工作簿的工作表名字改成被复制工作簿文件名,这儿应用于xls文件,即Excel97-2003的文件,如果是Excel2007,需要改成xlsx

newwb.Worksheets(i).Name = VBA.Replace(tempwb.Name, ".xls", "")

'关闭被合并工作簿

tempwb.Close SaveChanges:=False

i = i + 1

Next vrtSelectedItem

End If

End With

Set fd = Nothing

End Sub

3. 打开刚保存的excel文件,工具 - 巨集 - 巨集 - 选择刚建立的巨集(只有一个) - 执行 - 选择所有需要合并到新建的excel文件中的所有excel文件。 等待它合并完(文件多的话,合并的时间就长点)。

2.如何将多个Excel文档合并

vba代码,网上收集的:

Sub merger()

Dim MyPath, MyName, AWbName

Dim Wb As Workbook, WbN As String

Dim G As Long

Dim Num As Long

Dim BOX As String

Application.ScreenUpdating = False

MyPath = ActiveWorkbook.Path

MyName = Dir(MyPath & "\" & "*.xls")

AWbName = ActiveWorkbook.Name

Num = 0

Do While MyName <> ""

If MyName <> AWbName Then

Set Wb = Workbooks.Open(MyPath & "\" & MyName)

Num = Num + 1

With Workbooks(1).ActiveSheet

.Cells(.Range("A65536").End(xlUp).Row + 2, 1) = Left(MyName, Len(MyName) - 4)

For G = 1 To Sheets.Count

Wb.Sheets(G).UsedRange.Copy .Cells(.Range("A65536").End(xlUp).Row + 1, 1)

Next

WbN = WbN & Chr(13) & Wb.Name

Wb.Close False

End With

End If

MyName = Dir

Loop

Range("A1").Select

Application.ScreenUpdating = True

MsgBox "共合并了" & Num &; "个工作薄下的全部工作表。如下:" & Chr(13) & WbN, vbInformation, "提示"

End Sub

相关信息


电脑版

【免责声明】本站信息来自网友投稿及网络整理,内容仅供参考,如果有错误请反馈给我们及时更正,对文中内容的真实性和完整性本站不提供任何保证,不承但任何责任。
版权所有:学窍知识网 Copyright © 2011-2025 www.at317.com All Rights Reserved .