ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > E问E答 > Excel VBA > 如何用代码修改公式并引用上一个可见单元格?

如何用代码修改公式并引用上一个可见单元格?

作者:绿色风 分类: 时间:2022-08-17 浏览:104
楼主
wjc2090742
Q:如何用代码修改公式并引用上一个可见单元格?如下图,D列余额的计算是收-支+D列上一个可见单元格值,要求设计代码,当E列进行账户筛选时,能批量修改D列公式,引用上一个单元格。

 
A:思路:在筛选后,将可见单元格地址装入数组,再循环数组,改写对应单元格公式。代码:

  1. Sub text()
  2. Application.ScreenUpdating = False
  3. Dim ar, i%, rg As Range, str$
  4. Set rg = Range("d3:d" & Cells(Rows.Count, "d").End(3).Row).SpecialCells(xlCellTypeVisible)
  5. ReDim ar(1 To rg.Count)
  6. For Each rg1 In rg
  7.     i = i + 1
  8.     ar(i) = rg1.Address(0, 0)
  9. Next
  10. For i = UBound(ar) To 2 Step -1
  11.     Range(ar(i)) = "=" & Range(ar(i)).Offset(0, -2).Address(0, 0) & "-" & Range(ar(i)).Offset(0, -1).Address(0, 0) & "+" & ar(i - 1)
  12. Next
  13. Application.ScreenUpdating = True
  14. End Sub
如果要实现筛选后自动修改公式,也可以将代码放入Calculate事件中。


该帖已经同步到 wjc2090742的微博

如何用代码使筛选时能在公式中引用上一个可见单元格?.rar
2楼
liu12345678jing
有点看不懂,还要继续学习。
3楼
JOYARK1958
謝謝提供學習下載中

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap