我们常常遇到这样的问题: 把一些名称重复输入个N行,N是特定的,比如说。结果大概这样: 为什么我们要做这样的事情呢。其实这样的应用场景很多,比如说促销活动选品,不同类目名称要有不同的个数。类目属性调整,不同类目也是不同的属性项,也就有了不同的次数。不同行业也有各自不同的场景。 以往基本上就是手动来做,很辛苦。名称越多,越辛苦。 现在如果会VBA就能用VBA来实现自动化,当然学好VBA,不是一天两天的事情。 下面就来分享我的代码,首先感谢一起学习VBA的朋友的帮助,我就差那1句代码。但这句却是最难想到的。 全部代码如下: Alt+F11,进入VBE编辑器,插入模块,放入代码: Public Sub chongf()'名称N次重复 Dim m as integer,i as integer,k as integer m = 3 '赋值 For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row'到非空最末 msgtr = Range("b" & i) '区域赋值变量比直接赋值更易懂 For k = 1 To msgtr Range("d" & m - 1) = Cells(i, 1)
Next Next End Sub 最后就能实现效果: 我最早缺少那句时,我能写出for 双循环,但是我无法实现输出的数据每次下移一个单元格。原来构造一个每次加1单元格的变量就行了。 |