VBA实战技巧29:从一个工作表复制数据到另一个工作表

今天演示一个简单的例子,也是经常看到网友问的问题,将一个工作表中的数据复制到另一个工作表。

如下图1所示,有3个工作表,需要将工作表“新数据#1”和“新数据#2”中的数据复制到工作表“汇总”中。其中,在“汇总”工作表中已经有部分数据。

图1

工作表“新数据#1”中的数据如下图2所示。

图2

工作表“新数据#2”中的数据如下图3所示。

图3

按Alt+F11组合键,打开VBE,插入一个标准模块,输入如下代码:

Sub Copy_Data()

Sheets('新数据#1').Select

Range('A4').Select

Range(Selection, Selection.End(xlDown)).Select

Range(Selection, Selection.End(xlToRight)).Select

Selection.Copy

Sheets('汇总').Select

Range('A3').Select

Selection.End(xlDown).Select

ActiveCell.Offset(1, 0).Range('A1').Select

ActiveSheet.Paste

Sheets('新数据#2').Select

Range('A4').Select

Range(Selection, Selection.End(xlDown)).Select

Range(Selection, Selection.End(xlToRight)).Select

Application.CutCopyMode = False

Selection.Copy

Sheets('汇总').Select

Range('A3').Select

Selection.End(xlDown).Select

ActiveCell.Offset(1, 0).Range('A1').Select

ActiveSheet.Paste

Range('A3').Select

End Sub

代码中:

Range(Selection, Selection.End(xlDown)).Select

Range(Selection, Selection.End(xlToRight)).Select

表示从所选单元格开始,向下至该列数据末尾,向右至行数据末尾的区域。

Selection.End(xlDown).Select

ActiveCell.Offset(1,0).Range('A1').Select

表示选择最后一行数据之后的空行中的第1个单元格。

这段代码很直观,基本上根据三个工作表的特点,采用了“硬编码”,可以根据具体工作表的情况对上述代码进行修改。当然,也可以优化代码,使其具有通用性。

运行代码后,结果如下图4所示。

图4

(0)

相关推荐

  • 利用宏命令实现多表格合并之备忘录

    关于多表格合并以及批量文件改名,此前在文章<懒人意识和工具思维>中有过记录,当时并未附代码,而且文字描述不够清晰,导致回看时无法快速掌握.因此有必要再次重温这个老生常谈的问题--多表格合并 ...

  • VBA实战技巧13: 同步多工作表指定区域的数据

    excelperfect 很多情形下,我们希望同时在几个工作表中输入同样的数据.我们知道,将工作表组合能够方便地实现数据的同时输入.然而,如果忘记解除工作表组合,则可能误输入不想在所有工作表中都输入的 ...

  • VBA实战技巧28:自动关闭指定时间没有进行操作的工作簿

    excelperfect 有时候,我们打开了一个工作簿,但长时间没有使用,此时,你可能想让Excel自动将其关闭.也就是说,对于某个工作簿,如果用户在指定的时间内没有进行任何操作,那么Excel会保存 ...

  • VBA实战技巧22:调整XY图表缩放比例以获取正确的宽高比

    excelperfect 目标:想要调整XY(散点图)图表,以使两个轴的单位坐标轴值具有相同的比例.也就是说,需要调整图1中的图表,以便成为如图2所示的正方形和圆形. 图1:开始时是椭圆形和长方形 图 ...

  • VBA实战技巧24:调整图表数据标签的位置

    excelperfect 有时候,在Excel中绘制的图表会出现数据标签重叠的情形,不便于查看,如下图1所示. 图1 此时,可以手工拖动数据标签来进行位置调整,也可以使用VBA代码来自动调整. 首先, ...

  • VBA实战技巧25:巧用文本框和列表框

    excelperfect 如下图1所示,在用户窗体界面上实际放置着一个文本框和一个列表框,当单击文本框右侧的下拉按钮时,会出现一个列表框,你可以从中选择数据项并将其输入到文本框中. 图1 也就是说,通 ...

  • 将多个工作表的数据合并到一个工作表中

    你好,我是刘卓.欢迎来到我的公号,excel函数解析.在工作中,我们的数据可能有很多,比如有很多个部门的数据,要分别放在不同的工作表中. 但在汇总分析的时候,需要将所有部门的数据合并起来,统一处理.这 ...

  • VBA实战技巧26:使用递归确定所有的引用单元格

    excelperfect 在Excel中,经常存在一个单元格引用另一个单元格中,而另一个单元格又引用其他单元格的情形.如何使用VBA代码编程确定指定单元格的所有引用单元格呢? 引用单元格是由公式引用并 ...

  • VBA实战技巧27:根据颜色汇总单元格数据

    excelperfect 本文给出了一种根据单元格背景色汇总单元格数据的方法:使用VBA创建一个自定义函数来实现该目的. 我们希望这个函数工作的方式是,填充了颜色的单元格来表示额外的信息,例如代表诸如 ...

  • 一个公式,将数据提取到指定工作表

    亲爱的表亲好: 在日常应用中,从总表中拆分数据还是经常会用到的.比如说,将销售数据提取到各个销售部工作表.将学生名单提取到各个班级工作表-- 今天分享的内容,就是和拆分有关的那些事. 1 动态获取工作 ...