通信人家园

标题: EXCEL 多文件合并器  [查看完整版帖子] [打印本页]

时间:  2009-6-18 13:28
作者: jonice     标题: EXCEL 多文件合并器

本EXCEL多文件合并器为将多个同类型的EXCEL 文件合并为一个excel文件 对原有宏进行更新,增加窗体按钮,请大家直接下载:  带窗体多EXCEL文件合并器V4.zip   

         注:    此宏由本人编写 如有不方便的地方请大家多多指教

[ 本帖最后由 jonice 于 2011-5-26 22:07 编辑 ]
时间:  2009-6-18 16:30
作者: zgjnnyl

好东西,已下载
有时间看看好用不
时间:  2009-6-18 17:50
作者: whp1362

下载试试看:)
时间:  2009-6-18 17:53
作者: phxhappyboy

没看到你的宏啊
时间:  2009-6-18 22:58
作者: kong2009qi

谢谢楼主的分享,偶已收藏!
时间:  2009-6-19 14:05
作者: aiybshe

就是怎么没有宏程序呢??
时间:  2009-6-19 16:25
作者: 秘书

Sub A多表格文件合并器_适用于2003和2007()

'由于本EXCEL为2003版 ,故只支持行数为6万行的数据合并,
'需要更多行数可以将本程序复制到启用宏的2007版office中即可实现

    Dim MyPath As String, FilesInPath As String
    Dim MyFiles() As String
    Dim SourceRcount As Long, FNum As Long
    Dim mybook As Workbook, BaseWks As Worksheet
    Dim sourceRange As Range, destrange As Range
    Dim rnum As Long, CalcMode As Long
    Dim FirstCell As String
    Dim totalrows%
    Dim i%
    Dim n%
    n = 2
    '文件所在的文件夹路径,可修改为相应的文件夹
    MyPath = "E:\合并文件"

    '路径末尾是否有反斜杠,若无则添加
    If Right(MyPath, 1) <> "\" Then
        MyPath = MyPath & "\"
    End If

    '如果文件夹中没有Excel文件则退出
    FilesInPath = Dir(MyPath & "*.xl*")
    If FilesInPath = "" Then
        MsgBox "No files found"
        Exit Sub
    End If

    '使用文件夹中的Excel文件列表填充数组 (MyFiles)
    FNum = 0
    Do While FilesInPath <> ""
        FNum = FNum + 1
       ReDim Preserve MyFiles(1 To FNum)
        MyFiles(FNum) = FilesInPath
        FilesInPath = Dir()
    Loop

    '修改屏幕更新,计算模式和启用事件的状态
    With Application
        CalcMode = .Calculation
        .Calculation = xlCalculationManual
        .ScreenUpdating = False
        .EnableEvents = False
    End With

    '创建带有一个工作表的新工作簿
    'Set BaseWks = Workbooks.Add(xlWBATWorksheet).Worksheets(1)
   ' rnum = 1

    '遍历数组(myFiles)中的所有文件
   
   
    If FNum > 0 Then
        For FNum = LBound(MyFiles) To UBound(MyFiles)
            Set mybook = Nothing
            On Error Resume Next
            Set mybook = Workbooks.Open(MyPath & MyFiles(FNum))
            n = Sheets.Count                       '计算工作表数目
           fn = ActiveWorkbook.Name
           For i = 1 To n                            '循环进行多工作表合并
             Sheets(i).Select                       '原文件表选择
             totalrows = WorksheetFunction.CountA(Range("A:A"))  '原表行数
             Range(Cells(2, 1), Cells(totalrows, 200)).Select
             Selection.Copy
             Windows("多EXCEL文件合并器.xls").Activate
             Sheets(i).Select                          '目标表选择
            targetrows = WorksheetFunction.CountA(Range("A:A")) '目标行数
            Cells(targetrows + 1, 1).Select
            ActiveSheet.Paste
            Windows(fn).Activate
            Application.CutCopyMode = False
            Sheets.Add After:=Sheets(Sheets.Count)  '新增空工作表(当工作表多于六个时添加)
            Next i
        ' ActiveWindow.Close savechanges:=False
         mybook.Close savechanges:=False          '关闭工作表,但不保存改变
        Next FNum
        BaseWks.Columns.AutoFit
    End If

ExitTheSub:
    '恢复屏幕更新,计算模式和启用事件的状态
    With Application
        .ScreenUpdating = True
        .EnableEvents = True
        .Calculation = CalcMode
    End With
End Sub
________________________________________________________________________
Sub B多表格文件合并器_仅适用于2003()
' 由于本EXCEL为2003版 ,故只支持行数为6万行的数据合并
'本程序通过VBA  FileSearch 函数遍历 ,但office 2007版无此函数,故只适用于2003版
Dim n%
n = 2

With Application.FileSearch
                .LookIn = "E:\合并文件"
                .Filename = "*.xls"
If .Execute > 0 Then
For i = 1 To .FoundFiles.Count
Workbooks.Open (.FoundFiles(i))
    n = Sheets.Count
fn = ActiveWorkbook.Name
    For j = 1 To n                      '循环进行多工作表合并
    Sheets(j).Select                      '原工作表选择
    totalrows = WorksheetFunction.CountA(Range("A:A"))  '原表行数
    Range(Cells(2, 1), Cells(totalrows, 200)).Select
    Selection.Copy
    Windows("多EXCEL文件合并器.xls").Activate
    Sheets(j).Select                      '目标工作表选择
    targetrows = WorksheetFunction.CountA(Range("A:A")) '目标行数
    Cells(targetrows + 1, 1).Select
    ActiveSheet.Paste
    Windows(fn).Activate
    Application.CutCopyMode = False
    Sheets.Add After:=Sheets(Sheets.Count)
    Next j
    ActiveWindow.Close savechanges:=False
   
Next i
End If
End With
End Sub
时间:  2009-6-19 19:09
作者: chenqiangjun


时间:  2009-6-23 12:47
作者: 20040630

谢谢!
请问如果硬盘只有两个分区而没有E盘咋办呢?
时间:  2009-6-23 13:25
作者: 20040630

原帖由 20040630 于 2009-6-23 12:47 发表
谢谢!
请问如果硬盘只有两个分区而没有E盘咋办呢?


已解决!
时间:  2009-6-24 09:25
作者: 暖暖枫

好东西,谢谢分享!:) :) :)
时间:  2009-6-26 01:02
作者: 雷龙

谢谢
时间:  2009-11-17 18:31
作者: sky_ytl     标题: 用过了,非常好

谢谢
时间:  2009-11-17 20:41
作者: andysang2008

好资料 谢谢
时间:  2009-11-26 00:40
作者: wkfeng

胸有成竹
时间:  2009-12-17 17:13
作者: 双爸爸

好东西,已下载
时间:  2009-12-23 11:12
作者: zaqzaq08

ddddddddddddddd
时间:  2010-1-29 15:22
作者: chench66601

感谢分享
时间:  2010-5-12 10:20
作者: jenny-lee

正想用, 下载下来试试看,先谢 过
时间:  2010-5-12 22:07
作者: s69120

果然高明。
时间:  2010-5-14 17:02
作者: dglihui2009

好的东西大家都喜欢,谢谢分享
时间:  2010-6-28 14:32
作者: zimuyang

感觉不错,下来试试看
时间:  2010-7-2 13:20
作者: adidassuper     标题: bucuo


时间:  2010-7-8 15:45
作者: 131025

谢谢
时间:  2010-9-17 10:18
作者: bb1234bb1234

看看
时间:  2010-9-19 11:47
作者: mikey333

谢谢分享
时间:  2010-10-19 15:56
作者: zhong_leilei

呜呜呜呜,好久没来了,咋办。。。
时间:  2010-12-17 09:28
作者: ant007

多谢楼主
时间:  2010-12-17 11:22
作者: QQ松松

试试呢
时间:  2010-12-17 12:37
作者: by0305     标题: 回复 1# 的帖子

谢谢  试一试
时间:  2011-1-4 19:44
作者: tcwxtt

谢谢楼主提供这么有用的东西,下过来试试
时间:  2011-1-6 14:59
作者: myboy2     标题: 感谢开发软件的兄弟姐妹

感谢开发软件的兄弟姐妹
时间:  2011-1-6 15:04
作者: kobe3625

谢谢分享!!!
辛苦 了!
时间:  2011-1-19 16:51
作者: zcx119     标题: 回复 1# 的帖子

想用,下载下来试试看
时间:  2011-2-14 14:01
作者: xxparadise

谢谢分享
时间:  2011-2-17 08:40
作者: dsandrew

谢谢提供,学习一下。
时间:  2011-2-17 09:53
作者: wzxccnu     标题: 好东西

谢谢楼主分享好东西
时间:  2011-2-21 17:37
作者: eins123     标题: ddddddddddddddddddd

dddddddddddddddd
时间:  2011-2-24 19:05
作者: xiaowudetian     标题: asdasdasdasdasd

gdfgdfgdfgdfgdsgsdgsdgsdgsdgsdfgdsfgsdfgsdfgsdfg
时间:  2011-2-26 18:34
作者: zhuiact     标题: 学习

27
时间:  2011-3-3 09:01
作者: hesen0510     标题: 你好

你好
时间:  2011-3-3 14:29
作者: 康乐果

下来看看~
时间:  2011-3-4 20:50
作者: anywherecx

谢谢
时间:  2011-3-6 20:51
作者: fhbbqq

:) :) :) 好
时间:  2011-3-8 14:24
作者: andy725

试试看吧
时间:  2011-3-8 14:32
作者: 无忧狼

好东西 太好了
时间:  2011-3-9 14:27
作者: lianglong

看看如何
时间:  2011-3-10 21:24
作者: JJ1999JJ1999


时间:  2011-3-14 15:48
作者: xi_yan83     标题: 谢谢分享

谢谢分享
时间:  2011-3-14 22:32
作者: zhaoxuntao     标题: 回复 1# 的帖子

谢谢!
时间:  2011-3-17 08:59
作者: thempty

找来找去,找到了这里,谢谢LZ,试试哈~
时间:  2011-3-22 15:43
作者: jordanbo

感谢!
时间:  2011-3-24 09:26
作者: SKYLOVE1027

谢谢
时间:  2011-3-24 17:24
作者: JYGRJGC

好东西
时间:  2011-3-28 18:26
作者: hewuque

学习了  下载试试看
时间:  2011-3-28 22:58
作者: joyeefox

试试看
时间:  2011-3-29 13:03
作者: chaoweiwlkj     标题: ganx

感谢提供 解决了 我的大难题
时间:  2011-3-31 15:03
作者: fortuner1980

好东西 找了好久
时间:  2011-4-1 16:01
作者: hbch2011

非常感谢
时间:  2011-4-3 13:26
作者: 萨达姆2号     标题: 12

455678
时间:  2011-4-4 16:51
作者: amelynn

来看看是多好的东西
时间:  2011-4-10 15:26
作者: xsm1974

先下载看看 感谢楼主的分享
时间:  2011-4-15 11:57
作者: canchen88

正是需要
时间:  2011-4-20 20:54
作者: nochild     标题: 谢谢


时间:  2011-4-22 07:02
作者: ZZK158158     标题: 好东西

好东西
时间:  2011-4-25 10:10
作者: q307963691

好东西
时间:  2011-5-13 23:51
作者: itpcl     标题: 不错的工具 正好需要

不错的工具 正好需要
时间:  2011-5-16 22:38
作者: mghai

找了很久,谢谢
时间:  2011-5-18 15:23
作者: zkcn     标题: 好想好想


时间:  2011-5-21 22:12
作者: zhangchaopku

非常好
时间:  2011-5-22 10:55
作者: 燕雁无心

非常好的东西,很强大!
时间:  2011-5-23 13:15
作者: zhucezhucezh

新用户怎么下载啊?
时间:  2011-5-23 14:59
作者: zj610326

ddddddddddddddd
时间:  2011-5-24 14:22
作者: jj5218

谢谢,先试试
时间:  2011-5-24 16:54
作者: 3331530

呵呵,以前没用过,下来试试看!
时间:  2011-5-26 09:01
作者: jyszhx

好东东。正在寻找。谢谢
时间:  2011-5-26 10:42
作者: wenspark

合并的速度怎么样啊,excel格式太复杂了
时间:  2011-5-26 11:46
作者: pc7169

好东西,已下载
有时间看看好用不
时间:  2011-5-26 17:23
作者: cjdbq

感谢楼主!下载下来试一试
时间:  2011-5-27 00:06
作者: gsb

不知道对我有没有帮助
时间:  2011-5-27 16:00
作者: amiao1999

谢谢分享!
时间:  2011-5-27 16:14
作者: mengaidai

下载看看
时间:  2011-6-1 11:26
作者: thomaszd     标题: 好东西下载看看

好东西下载看看
时间:  2011-6-6 18:09
作者: gillm

这个非常有用。。。
时间:  2011-6-7 10:10
作者: 悠悠003     标题: 感谢分享


时间:  2011-6-7 14:01
作者: zhangbear

好东西~~~顶一个~~~
时间:  2011-6-7 18:16
作者: demojameson

Thanks
时间:  2011-6-10 09:51
作者: kuiiing

谢谢
时间:  2011-6-16 12:32
作者: linfeiqian

好东西,顶
时间:  2011-6-16 16:43
作者: yyb1818

感谢楼主~~
时间:  2011-6-22 01:17
作者: yyy198010

好东西
时间:  2011-6-22 19:45
作者: 俄罗斯伐木场

这个工具非常有用
时间:  2011-6-22 20:37
作者: hi_vincent

好东西
时间:  2011-6-22 21:11
作者: winson966

good, thanks for your share
时间:  2011-6-23 09:20
作者: strongbase

新手过来,报到一下
时间:  2011-6-27 15:54
作者: chelsea0419

谢谢
时间:  2011-6-27 16:25
作者: wangshisheng

下载试试
时间:  2011-6-30 04:36
作者: twrt

好东西
时间:  2011-7-6 14:14
作者: 石油大王

强大啊!
时间:  2011-7-9 19:07
作者: zwj120499

正想用, 下载下来试试看,先谢 过




通信人家园 (https://www.txrjy.com/) Powered by C114