今天Steven大叔早早的来到公司,正在享用美味的早餐的时候,发现大叔的同事小白在工位上愁眉苦脸,早饭放在旁边都没有吃。
“小白,你怎么了”
“哎,老板让我去计算费用并汇总,着急要,各分公司发过来的表格太杂,好费劲啊,有没有什么简便方便把他们放在一个excel文件里的不同sheet,这样,我就方便统计了”
“确实,将好几百个excel表格一个个复制粘贴到主文件中的不同sheet,不但费时,还容易遗漏,有没有什么好方法呢”
“对了,小白,我们可以用Excel中的神器VBA进行处理”
“首先按alt+f11打开VBA编程界面,插入新的模块”
“输入代码”
Sub 合并()
Dim a As FileDialog
Set a = Application.FileDialog(msoFileDialogFilePicker)
Dim wb As Workbook
Set wb = Workbooks.Add
With a
If .Show = -1 Then
Dim vrtSelectedItem As Variant
Dim i As Integer
i = 1
For Each vrtSelectedItem In .SelectedItems
Dim wbs As Workbook
Set wbs = Workbooks.Open(vrtSelectedItem)
wbs.Worksheets(1).Copy Before:=wb.Worksheets(i)
wb.Worksheets(i).Name = VBA.Replace(wbs.Name, ".xlsx", "")
wbs.Close SaveChanges:=False
i = i + 1
Next vrtSelectedItem
End If
End With
Set a = Nothing
End Sub
“写完代码后,点击运行,弹出选择窗口,选择要合并的Excel文件即可完成合并,且每个sheet的名字为原文件名字,只能是每个Excel文件的第一个sheet,如果要复制其他sheet,可适当修改代码”
原本大量的重复工作,轻轻一点,即可完成,小白终于可以开开心心的吃早餐了;
有需要的童靴可以直接复制代码进行操作