繁体   English   中英

公式或VBA使它起作用?

[英]Formula or VBA for getting this to work?

我正在从模板工作表中运行报告,我需要插入一些公式。我使用宏运行报告,因此我不介意在运行工作表的宏中包含vba代码,但我也不要介意将公式插入模板。 工作表从第1-8行冻结,数据从第9行开始。每个报表都有不同的行数,具体取决于从主数据表中提取的内容。 对于报表上的每一行数据,我都需要在H列中获取值,将该数字除以80,然后将结果放入同一行的I列中。 然后,我需要对报表末尾的总计框中的第I列中的所有活动行求和(即,如果报表中有25行数据,则总计框位于第26列的I列中)

无论哪种方式听起来都不错,这可能更像是个人品味的东西。 由于生成的电子表格是静态的,所以我认为使用VBA而不是公式是可以的。

您可以对VBA进行以下操作:

dim dResult() as double

redim dresult(1 to LastRow+1)

for i=1 to lastrow
  if i>1 then
    dresult(i)=dresult(i-1)/80
  else
    dresult(i)='whatever
  end if
next i

  dresult(lastrow+1)=application.sum(dresult)

  wks.range("$I$1","$I$" & lastrow+1)=dresult

当然,这未经测试,因此请按需使用。 另外,您将需要找到lastrow并为其指定一个维度(整数或长整数),对于其他我未进行维度调整的内容,您也需要执行相同的操作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM