分享

Excel VBA 7.21谁说合并数据只能往下追加合并 今天我们来玩下横向合并

 Excel和VBA 2021-03-31

一起学习,一起进步~~


之前我们合并数据的时候,我们都是将几个excel报表的数据通过追加合并的方式合并到一个报表中的,什么是追加合并呢?就是不断的往下填充新的数据,类似于数据库ACCESS中的数据追加,但是今天我在实际操作的时候,忽然突发奇想,我们有时候好像需要用到横向合并数据的,尤其是在统一一个人的多个不同学科成绩,产品销售的时候非常有用,那么问题来了,VBA还可以横向统计数据?

场景模拟

横向合并数据也是比较常见的操作,其实想要实现这样的效果方法有很多种,VBA是其中的一种方法,因为VBA依托excel,也是我们比较常用的工具,所以我们还是选择VBA来实现我们想要的效果吧

假设我们现在有个工作表,是每个班的学科的考试成功,我们现在需要将他们横向汇总起来,方便我们横向对比,

想要实现这样的效果,要如何 操作呢?

代码区

其实今天的代码是非常的简单的,之前我们是追加式的合并数据,是按照最后一个非空单元格进行追加的,那么现在呢?

我们横向合并数据,那就是按照行的最后一个非空单元格进行追加合并就可以了。来看看代码

Sub sss()Dim sth As Worksheet, tsth As WorksheetWorksheets.Add after:=Worksheets(Worksheets.Count)Set tsth = ActiveSheettsth.Name = "横向汇总数据"For Each sth In Worksheets l = tsth.Cells(1, Columns.Count).End(xlToLeft).Column If Cells(1, 1) = "" Then sth.UsedRange.Copy tsth.Cells(1, 1) Else sth.UsedRange.Copy tsth.Cells(1, l + 1) End IfNext sthEnd Sub

成功的将所有表的数据横向合并在了一起

代码分析

今天的代码就比较的简单,应该没有多少的知识点需要讲解的,唯一大家需要理解的,就是思路了 。

====================================

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多