Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 948|回复: 1

宏代码:如何解决循环运行输出累加的问题

[复制链接]
发表于 2022-5-20 20:54 | 显示全部楼层 |阅读模式
本帖最后由 lijian8003 于 2022-5-20 21:36 编辑

目的:将A1:C13内的所有数据归集到一列
需求:宏代码循环运行3次,依次写入E F G列,
问题:附件中2个宏代码,循环运行后,均存在输出累加的问题,
即 F列 G列的加色部分,是前次循环累加的数据,欲去除。

实际运用中,该代码将插入其他代码内,共用一套变量。A1:C13区域的数据将变化N次,该代码也将循环运行N次。

2个代码问题一致:均未归零。分别添加n=0:m=0  问题已解决。
如何解决宏代码循环运行输出累加的问题.png

如何解决宏代码循环运行输出累加的问题.rar

20.72 KB, 下载次数: 2

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2022-5-20 21:56 | 显示全部楼层
  1. Sub mystr()
  2. Dim ar, br, i%, n%, x%, s&, strs$
  3. ar = Range("a1:c13")
  4. For i = 1 To 3
  5.     For n = 1 To UBound(ar, 1)
  6.         If ar(n, i) <> "" Then
  7.             strs = strs & ar(n, i) & " "
  8.         End If
  9.     Next n
  10. Next i
  11. Range("e:g") = ""
  12. br = Split(RTrim(strs), " ")
  13. s = 1
  14. For x = 1 To 3
  15.     Cells(s, x + 4).Resize(UBound(br) + 1, 1) = Application.Transpose(br)
  16.     s = s + UBound(br) + 1
  17. Next x
  18. End Sub
复制代码


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-2 11:29 , Processed in 0.253296 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表