与 30万 粉丝一起学Excel图片
VIP学员的问题,左边是原始数据,实际有800多条记录,每2行复制,转置成右边的果。也就是说,需要操作400多次才能实现全部转换,想想都是一件吃力不讨好的事情。图片
记住一句话,重复的事情,交给循环语句For Next去做,我们只需教她操作一遍即可。来,跟卢子一起看看。点开发工具,录制宏,选择区域B3:G4,复制,点I3,右键,转置,停止录制。图片
点开发工具,VB,模块1,就可以看到刚刚录制的宏。图片
先在代码前后加上循环语句For Next,VBA的变量i可以从0开始。图片
这里是每2行,操作一遍,铁皮保温施工因此不需要进行判断。怎么表示区域向下0行、2行、4行等等?Excel里面的函数Offset可以向下,向右得到对应的值,其实VBA里面也支持这个函数。Range("B3:G4").Offset(2 * i, 0)就代表区域向下0行、2行、4行。图片
同理,一次从单元格I3开始转置,二次就得从I9开始,三次就得从I15开始,也就是隔着6行,也就是Range("I3").Offset(6 * i, 0)。图片
到这里核心的代码已经修改完毕,可以运行了。图片
当然,你也可以对代码进行再一步简化,前提是你有一定的VBA基础。如果不熟悉,这一步可以省略,别弄巧成拙。Sub 批量转置()
联系人:何经理For i = 0 To 2
Range("B3:G4").Offset(2 * i, 0).Copy
Range("I3").Offset(6 * i, 0).PasteSpecial Transpose:=True
这几年,中国车市的竞争越来越激烈。尤其是在智能化电动化浪潮下,中国汽车品牌面对着车市的巨大竞争压力,对于市场的理解也越来越浮躁。在满屏的豪情壮语中,越来越多的汽车品牌离消费者越来越远,离一个强大的企业越来越远。
Next
End Sub
VBA真的是好东西,学好太省事了! 本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报。
