`
pumaboyd
  • 浏览: 249571 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Excel多文件合并(VBA方案)

阅读更多

这个问题是来自MM的。MM财务工作和Excel比较多。最近MM公司要统计各分公司的数据。由于城市比较多,需要汇总的工作量比较大。而且有很大一部分数据基础工作是Copy,Paste 数据。为表达对MM的关心和爱护(嘻嘻),写了这么一段VBA,可以大大减轻MM的工作量。

我用一个简单的原型来说明这个问题。

Excel文件:上海.xsl、北京.xsl、广州.xsl。这些数据由各地分公司提供,以3个城市说明问题。

MM的工作(这里忽略格式调整等):

1:将上面3个xsl文件拷贝到一个全国.xsl中。也就是要有 上海.sheet、北京sheet、广州sheet  3个sheet

2:同时又要将3个sheet的数据汇总到一个全国sheet中。

3:最终结果就是一个全国.xsl文件包含4个sheet(全国、上海、北京、广州)

最早想的办法是将Excel文件导入Access数据库,我再将数据导出。毕竟搞IT的,SQL语法对我来说没问题。但在导入Access中发现Excel文件有合并单元格问题,而且几个Excel列数不一样。发现导入Access对Excel文件本身要求高,方案失败。

没办法就只能使用宏来模拟用户的操作。已经很久没写VBA了,特意查了一下最早的一个是2006-12-28的Excel文件。(*^__^*),都是一年以前的事情了。本身就是现学现用,又这么长时间,基本忘过。好在这东西不复杂,看看原来的资料,再网上搜索了一下。一个晚上搞定了。

关键代码如下(伪代码,):

--调用选取文件对话框,选择多个xls文件

Filenames = Application.GetOpenFilename("Microsoft Office Excel Files (*.xls), *.xls", , "请选取文件", , True)

--循环FileNames,Copy当前文件内容,粘贴到新增的Sheet中(完成多个XLS 合并到一个xsl中),再将数据合并到全国sheet中

Workbooks(FileNames(i)).Worksheets(1).UsedRange.Copy

Worksheets.Add after:=Worksheets(1)

ActiveSheet.Paste

Workbooks(“总表名”).Worksheets(thisheetname).[A65536].End(xlUp).Offset(1, 0).Select
ActiveSheet.Paste

 

原代码我就不提供了,这里提供方案下载,如果你有类似的操作,可以使用这个Excel。

合并DEMO方案Excel_VAB1

Google 标记: Excel, VBA
分享到:
评论

相关推荐

    EXCEL 多个文件合并

    对于需要合并多个Excel文件的情况,VBA提供了灵活而强大的解决方案。 #### 知识点二:代码实现多文件合并 在提供的部分内容中,有几个VBA宏被展示出来,用于合并Excel文件。首先,有一个宏用于复制单个工作表到另...

    WPS的js宏写的Excel文件合并工具,通过文件对话框选择文件来合并表格

    总结来说,WPS Excel的JS宏写的文件合并工具是提高办公效率的有效解决方案,它简化了多表格合并的过程,降低了错误率。对于经常处理大量Excel数据的用户,这样的工具无疑是一大福音。同时,对于开发者而言,它展示了...

    通过VBA将多个格式相同的Excel文件合并成一个文件,带文件处理

    在本场景中,我们关注的是如何利用VBA来实现多个格式相同的Excel文件的合并。这是一项常见的需求,特别是在数据分析、报告汇总或数据整理时,能够批量处理大量类似的Excel文件,可以显著提高工作效率。 首先,我们...

    Excel-table-merge.rar_Excel VBA_Table_VBA合并表格_excel mer_vba 合并

    例如,`Workbooks("FileName.xlsx")`将引用名为"FileName.xlsx"的Excel文件。 2. **遍历工作表**:然后,程序会遍历工作簿中的每一个Sheet,可能通过`Worksheets`集合进行操作。`For Each Sheet In Workbooks(...

    合并相同项目_ExcelVBA_

    在Excel VBA编程中,"合并相同项目...学习和理解这些文件内容,可以帮助你掌握在Excel VBA环境中处理和合并相同数据的技巧,从而提升数据处理能力。同时,也可以借鉴和参考其中的代码片段,为自己的VBA项目提供灵感。

    excel vba批量填表.rar

    例如,`Range`对象用于选择和操作单元格,`For Each`循环用于遍历数据,`Worksheet`对象用于操作工作表,`Workbook`对象用于操作整个Excel文件,而`Application`对象则提供了与其他Office应用程序(如MSWord)交互的...

    excel+vba实例800(全)

    《Excel + VBA实例800(全)》是一份全面深入探讨Excel与VBA结合使用的实践教程。这个压缩包包含了大量的示例,旨在帮助用户掌握如何通过VBA(Visual Basic for Applications)来扩展和自动化Excel的功能,提高工作...

    合并多个TXT数据到一个Excel中

    本篇将详细讲解如何将多个用Tab键分隔的TXT文件合并到一个Excel工作表中。 首先,我们要明白TXT文件是一种纯文本格式,它不包含任何格式信息,只存储文字和由特定字符(如Tab或逗号)分隔的数据。在本例中,每个TXT...

    巧学巧用.EXCEL.2003.VBA与宏.样例文件

    样例文件”以及描述中的信息都指向一个主题,即如何巧妙地学习和应用Excel 2003中的VBA(Visual Basic for Applications)和宏。VBA是Microsoft Office套件中的一种内置编程语言,它允许用户自定义功能、自动化任务...

    同一文件夹下面多个Excel批量转换成PDF

    标题 "同一文件夹下面多个Excel批量转换成PDF" 描述了一种使用VBA(Visual Basic for Applications)在Excel中实现批量将Excel文件转换为PDF格式的解决方案。VBA是Microsoft Office套件中内置的一种编程语言,允许...

    EXCEL WORD ACCESS VBA帮助文件 CHM

    这个CHM文件集将提供详细的函数参考、示例代码和问题解决方案,是学习和提升Excel、Word、Access VBA编程技能的宝贵资源。无论你是初学者还是经验丰富的开发者,都能从中找到所需的信息。通过深入学习和实践,你将...

    多个excel文件快速合并成一个文件非常好用.doc

    如果你不想使用上述步骤,可以使用以下VBA代码来合并多个Excel文件: ```vba Sub CombineWorkbooks() Dim FilesToOpen, ft Dim x As Integer Application.ScreenUpdating = False On Error GoTo errhandler ...

    excel合并工具.zip

    1. Excel文件合并的基本概念: 在Excel中,合并文件通常指的是将多个独立的Excel工作簿(.xlsx或.xls文件)或工作表(每个Excel文件内的单个表格)整合到一个新的单一工作簿中。这样可以减少文件数量,便于数据对比...

    批量合成PDF并重命名.zip

    总之,"批量合成PDF并重命名.zip"的压缩包提供了基于VBA的自动化解决方案,能够帮助用户高效地处理大量PDF文件的合成和重命名任务。这涉及到文件处理、数据读取、脚本编程等多个IT领域的知识点,是提高办公效率的...

    多个EXCEL合并工具

    其次,列合并则是在保持原有行结构不变的情况下,将多个Excel文件的某一列数据横向拼接在一起。这在比较不同时间段的数据变化,或者收集来自多个来源的同类数据时非常实用。例如,你可以将每个月的销售报表横向合并...

    合并文件夹下所有文件.rar

    这样,用户只需点击一次,就能自动完成整个文件夹内的Excel文件合并。 总的来说,这个压缩包提供了一个实用的VBA解决方案,帮助用户高效地处理大量Excel数据。通过学习和理解这段代码,你可以定制自己的文件合并...

    一个基于Excel和VBA开发的自动生成.pdf

    通过本文介绍的方法,我们可以轻松地在Excel中利用VBA实现PDF文件的自动化生成。这不仅能极大提升工作效率,还能确保输出结果的一致性和准确性。随着实践经验的积累和技术的不断进步,相信未来还会有更多创新性的...

    VBA_excel.rar_NPOI库_npoi _vba excel_批量excel

    在VBA中处理Excel文件,我们可以编写宏代码来执行一系列操作,例如遍历工作表、筛选数据、合并单元格等。但VBA的缺点在于其功能有限,特别是在处理大量数据或复杂逻辑时。这时,结合NPOI库,我们可以实现更高效、更...

    合并多工作簿中同名工作表

    这是VBA脚本运行的基础,因为脚本会遍历这个文件夹内的所有Excel文件。接下来,我们分步骤解析这个过程: 1. **多工作表数据汇总**:如果你有多个工作簿,每个工作簿内部都有同名的工作表,你可以编写VBA代码逐个...

    office vba教程中文帮助手册chm.zip

    1. VBAWD10.CHM:这是Word VBA的帮助文件,提供了Word对象模型的详细信息,包括文档、段落、表格、图形、邮件合并等各种对象的属性、方法和事件。通过此文件,学习者可以掌握如何使用VBA自动化Word任务,例如创建、...

Global site tag (gtag.js) - Google Analytics