Excel精英培训网

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

[已解决]对单一工作表的求和. 横向(列)求和, 直向(行)求和

[复制链接]
发表于 2021-6-21 17:28 | 显示全部楼层 |阅读模式
其实这问对先进们看是简单, 但是后进想要了解吸收学习字典法和数组法的程序, 觉得它应该有着理解上的程序困扰着我.

每个单一工作表都可能有的增加或减少(这里列举1月), 因此这次问题是针对单一工作表的求和.
横向()求和的要求:
1.I列是销货的合计, 因为行数是会随时增加的, 因为当月的异动可能是增加, 可能会减少.
直向()求和的要求:
2.要计算E~H, I列是合计的总求和.
3. 因为行数是会随时增加的, 所以会想把每一列的求和都在最后数据行的下一空白行.
加上"TOTAL"的文字符在A列最后数据列的下一行,

就跟这张表的求和方式一样, 把每一个列名下的求和, 一起计算.



最佳答案
2021-6-21 18:11
  1. Sub 汇总()
  2.    Dim ARR(), IROW As Single, BRR(), I
  3.    IROW = Range("A3").End(xlDown).Row
  4.    ARR = Range("G3:H" & IROW)
  5.    ReDim BRR(1 To IROW - 2)
  6.    For I = 1 To IROW - 2
  7.       BRR(I) = ARR(I, 1) + ARR(I, 2)
  8.    Next
  9.    Range("I3").Resize(IROW - 2) = Application.Transpose(BRR)
  10.    Range("A" & IROW + 1).Value = "TOTAL"
  11.    Cells(IROW + 1, 5) = Application.Sum(Range("E2:E" & IROW))
  12.    Cells(IROW + 1, 7) = Application.Sum(Range("G2:G" & IROW))
  13.    Cells(IROW + 1, 8) = Application.Sum(Range("H2:H" & IROW))
  14.    Cells(IROW + 1, 9) = Application.Sum(Range("I2:I" & IROW))
  15.    Range("A" & IROW + 1).Resize(1, 9).Interior.Color = vbYellow
  16. End Sub
复制代码


我也是初学者。刚学几天的。看看能不能凑合用。如果不能满足你的需求的话。就等其他人的答案 哈。

OrderSales.rar

10.9 KB, 下载次数: 4

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2021-6-21 18:11 | 显示全部楼层    本楼为最佳答案   
  1. Sub 汇总()
  2.    Dim ARR(), IROW As Single, BRR(), I
  3.    IROW = Range("A3").End(xlDown).Row
  4.    ARR = Range("G3:H" & IROW)
  5.    ReDim BRR(1 To IROW - 2)
  6.    For I = 1 To IROW - 2
  7.       BRR(I) = ARR(I, 1) + ARR(I, 2)
  8.    Next
  9.    Range("I3").Resize(IROW - 2) = Application.Transpose(BRR)
  10.    Range("A" & IROW + 1).Value = "TOTAL"
  11.    Cells(IROW + 1, 5) = Application.Sum(Range("E2:E" & IROW))
  12.    Cells(IROW + 1, 7) = Application.Sum(Range("G2:G" & IROW))
  13.    Cells(IROW + 1, 8) = Application.Sum(Range("H2:H" & IROW))
  14.    Cells(IROW + 1, 9) = Application.Sum(Range("I2:I" & IROW))
  15.    Range("A" & IROW + 1).Resize(1, 9).Interior.Color = vbYellow
  16. End Sub
复制代码


我也是初学者。刚学几天的。看看能不能凑合用。如果不能满足你的需求的话。就等其他人的答案 哈。

OrderSales.rar

19.34 KB, 下载次数: 3

回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-27 09:48 , Processed in 0.356146 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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