Excel VBA实现按名称循环出现特定次数

网友投稿 435 2022-12-02

Excel VBA实现按名称循环出现特定次数

我们常常遇到这样的问题:

把一些名称重复输入个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)

m = m + 1 ‘让m产生变化是代码重点,我就缺这句。

Next

Next

End Sub

Excel VBA实现按名称循环出现特定次数

最后就能实现效果:

我最早缺少那句时,我能写出for 双循环,但是我无法实现输出的数据每次下移一个单元格。原来构造一个每次加1单元格的变量就行了。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Excel 工作表个数计算
下一篇:如何在Excel表格中编辑“宏”
相关文章