application.volatile是把函数变成易失性函数
但是,不是直接改变单元格内容,而是只修改批注的情况下,貌似触发不了自动更新的东东
定义的名称是sumpz
我在单元格写sumpz()&t(now()) 貌似也不能自动更新,必须要选中单元格,然后回车,结果才会改变.
求解决方法.
详见附件.- Function sumpz(rng As Range, st As String)
- Application.Volatile
- For Each rg In rng
- If rg.Cells.Comment Is Nothing Then
- k1 = k1 + rg
- Else
- If Replace(rg.Cells.Comment.Text, Chr(10), "") = st Then k = k + rg
- End If
- Next: sumpz = IIf(st = "", k1, k)
- End Function
复制代码 |