广告合作
  • 今日头条

    今日头条

  • 百度一下

    百度一下,你就知道

  • 新浪网

    新浪网 - 提供新闻线索,重大新闻爆料

  • 搜狐

    搜狐

  • 豆瓣

    豆瓣

  • 百度贴吧

    百度贴吧——全球领先的中文社区

  • 首页 尚未审核订阅工具 订阅

    多个excel文件合并成一个excel的多个sheet表

    来源:网络收集  点击:  时间:2024-04-23
    【导读】:
    今天处理Excel表格时无意碰到需要将多个excel文件合并成一个excel的sheet表,一个一个的复制粘贴又费时又费力。excel支持VBA代码操作,看过VBA代码视屏后,发现代码处理只需要几步就可以完成工具/原料more电脑,Excel软件,Excel文件方法/步骤1/5分步阅读

    把文件放在一个你找得到的文件夹,并新建一个空的Excel文件

    2/5

    打开空的Excel文件,在sheet上右键选择查看代码。

    3/5

    会自动新打开一个窗口,点击插入----模块

    4/5

    输入一下代码:

    功能:把多个excel工作簿的第一个sheet工作表合并到一个excel工作簿的多个sheet工作表,新工作表的名称等于原工作簿的名称

    Sub Books2Sheets()

    定义对话框变量

    Dim fd As FileDialog

    Set fd = Application.FileDialog(msoFileDialogFilePicker)

    新建一个工作簿

    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

    -----------------------------------------------------------------------------

    点击运行,稍等片刻

    5/5

    自动生成一个新的Excel文件,里面就是完整Excel转sheet表后的文件

    注意事项

    需要注意代码的规范不然会报错

    EXCEL处理文件办公必备技能
    本文关键词:

    版权声明:

    1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

    2、本站仅提供信息发布平台,不承担相关法律责任。

    3、若侵犯您的版权或隐私,请联系本站管理员删除。

    4、文章链接:http://www.1haoku.cn/art_580786.html

    相关资讯

    ©2019-2020 http://www.1haoku.cn/ 国ICP备20009186号05-07 16:49:27  耗时:0.028
    0.028s