Excel精英培训网

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

[已解决]运用宏代码快速输入不规格求和公式

[复制链接]
发表于 2017-4-15 10:03 | 显示全部楼层 |阅读模式
QQ截图2017041501.png
最佳答案
2017-4-15 12:44
增加了一句,减少循环。
  1. Sub aaa()
  2. Dim i&, k&, s$, r&
  3. s = [a1]
  4. r = [a65536].End(3).Row
  5. Application.ScreenUpdating = False
  6. For i = 4 To r
  7.   If Cells(i, 1) = s Then
  8.     For k = i To r
  9.       If Cells(k, 1) = "" Then Exit For
  10.     Next k
  11.     Cells(i, 12) = "=SUM(K" & i & ":K" & k - 1 & ")"
  12.   End If
  13.   i = k
  14. Next i
  15. Application.ScreenUpdating = True
  16. End Sub
复制代码
 楼主| 发表于 2017-4-15 10:08 | 显示全部楼层
附件

BOM 物料 计算-1703.rar

413.79 KB, 下载次数: 3

回复

使用道具 举报

发表于 2017-4-15 12:42 | 显示全部楼层
  1. Sub aaa()
  2. Dim i&, k&, s$, r&
  3. s = [a1]
  4. r = [a65536].End(3).Row
  5. Application.ScreenUpdating = False
  6. For i = 4 To r
  7.   If Cells(i, 1) = s Then
  8.     For k = i To r
  9.       If Cells(k, 1) = "" Then Exit For
  10.     Next k
  11.     Cells(i, 12) = "=SUM(K" & i & ":K" & k - 1 & ")"
  12.   End If
  13. Next i
  14. Application.ScreenUpdating = True
  15. End Sub
复制代码
回复

使用道具 举报

发表于 2017-4-15 12:44 | 显示全部楼层    本楼为最佳答案   
增加了一句,减少循环。
  1. Sub aaa()
  2. Dim i&, k&, s$, r&
  3. s = [a1]
  4. r = [a65536].End(3).Row
  5. Application.ScreenUpdating = False
  6. For i = 4 To r
  7.   If Cells(i, 1) = s Then
  8.     For k = i To r
  9.       If Cells(k, 1) = "" Then Exit For
  10.     Next k
  11.     Cells(i, 12) = "=SUM(K" & i & ":K" & k - 1 & ")"
  12.   End If
  13.   i = k
  14. Next i
  15. Application.ScreenUpdating = True
  16. End Sub
复制代码
回复

使用道具 举报

发表于 2017-4-15 16:28 | 显示全部楼层
附件

TEST.zip

479.09 KB, 下载次数: 6

回复

使用道具 举报

 楼主| 发表于 2017-4-17 15:31 | 显示全部楼层
大灰狼1976 发表于 2017-4-15 12:44
增加了一句,减少循环。

谢谢,感谢你的帮助,很实用!
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-25 06:02 , Processed in 0.419570 second(s), 13 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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