所谓易失性函数是指:无论何时在工作表的任意单元格中进行计算时,易失性函数都必须重新进行计算。“易失函数”,就是指使用这些函数后,会引发工作表的重新计算,有时我们打开一个工作薄但不做任何更改就关闭时,EXCEL却提醒我们是否要保存,这就是因为文件用到了一些“易失性函数”,在打开文件时,易失性函数引发了文件重算。
 
       当每按一次F9,都会导致含有易失函数的公式,进行重新计算。

不但如此,在“自动重算”下任一空白单元格输入任意一个字符,都可能导致易失函数公式的重新计算,

易失性函数在应用中非常用用,但如果在表中大量使用易失性函数、滥用易失性函数的情况下,就可能会大大的影响表格的运行速度

“易失函数”又分“显性”易失函数和“隐性”易失函数

now( ),rand( ),today( ),rand()是“显性”易失函数

offset( ),indirect( ),cell( ), info( ) 则是“隐性”易失函数【但cell("filename")不是易失函数】

有些函数:rows( ),columns( ),areas( ), weeknum( ),在微软文件中将其列为易失函数,

易失函数会影响表格运行速度,但大家也不需要谈虎色变,一般易失函数的运算速度是很快的,常常人还没觉察,它已经完成运算,据有心人测试:易失函数(包括易失性操作)会引发所有打开工作簿里含易失函数的公式全部重算,但不含易失函数的公式不会参与重算。这也成了定论
 
        index( )函数在excel 97版之后,不再是易失函数,但在使用A1:INDEX()、INDEX():INDEX()这种结构时,INDEX表现为半易失性函数(或工作簿级易失性函数),即:在工作表中按F9键或编辑单元格时不会引起整个工作簿的重新计算,而重新打开工作簿则会重新计算。
 
      (大多数的易失性函数都是工资表级易失性函数,即在工作表按F9键或编辑单元格时,就会引发重新计算。)

一般的公认SUMIF()因为其第3个参数简写时的不确定性,也认为是半易失性函数(或工作簿级易失性函数)

但我在实际运用时发觉SUMIF()和COUNTIF()也会因其它任意单元格的变动而重算,我个人认为也应该算是易失性函数,但只是我个人主观想法,不能做数。必经判定易失性函数的标准是“打开一个工作薄但不做任何更改就关闭时,是否要保存” 。

本文来自:Excel吧 (www.excelba.com)  http://www.excelba.com/Art/Html/345.html

在VBA自定义函函数时,我们可以将该函数变成易失性函数,只要在函数中加入一句语句。

    Application.Volatile

以下,为计算A列最后一个单元格行号的自定义函数,当用上述语句将它标记为易失性函数后,这个函数可以实时运算。

Function MyFunC()
    MyFunC = Range("A65536").End(xlUp).Row
    Application.Volatile
End Function
 

【作者: 阿木】【访问统计: 155 】【2010年03月5日 星期五 13:52】

http://publishblog.blogchina.com/blog/tb.b?diaryID=6950406

EXCEL vba 易失性函数相关推荐

  1. 面向非易失性内存的持久索引数据结构研究综述

    点击上方蓝字关注我们 面向非易失性内存的持久索引数据结构研究综述 王永锋, 陈志广 中山大学计算机学院,广东 广州 510006 摘要:随着非易失性内存从理论走向实用,现代存储系统的设计与实现将迎来颠 ...

  2. 非易失性内存在阿里生产环境的首次应用:Tair NVM最佳实践总结

    阿里妹导读:本文介绍了非易失性内存在阿里巴巴集团生产环境的首次应用:线上运行的情况:使用NVM遇到的问题和优化的过程:最后,总结性地给出了基于NVM构建缓存服务的设计要点,希望这些实践总结能对大家的工 ...

  3. Java多线程:易失性变量,事前关联和内存一致性

    什么是volatile变量? volatile是Java中的关键字. 您不能将其用作变量或方法名称. 期. 我们什么时候应该使用它? 哈哈,对不起,没办法. 当我们在多线程环境中与多个线程共享变量时, ...

  4. 今晚直播 | PostgreSQL基于非易失性内存优化探索

    PostgreSQL基于非易失性内存优化探索-07/22 Intel于2019年首次完成PCM商品化,其3D XPoint傲腾系列持久内存新硬件具有可字节寻址.非易失.大容量.堪比内存的速度特性,这种 ...

  5. Java可变引用,Java – 对可变对象的易失性引用 – 对对象的字段的更新对所有线程都是可见的...

    这两个问题.我们从第二个开始吧. 将新构造的对象分配给易变量变量工作得很好.读取volatile变量的每个线程都将看到一个完全构造的对象.不需要进一步的同步.这种模式通常与不可变类型结合使用. cla ...

  6. 或取代当前非易失性内存技术 Crossbar正式进军中国存储市场

    阻变式存储器(RRAM)技术的领导者Crossbar公司日前宣布正式进军中国市场,并在上海设立新的办事处. 目前,Crossbar RRAM能够在邮票大小的芯片上实现太字节(terabyte)存储,而 ...

  7. NVM(NonVolatile Memory)(非易失性内存)

    NVM特性 NonVolatile Memory,非易失存储器,具有非易失.按字节存取.存储密度高.低能耗.读写性能接近DRAM,但读写速度不对称,读远快于写,寿命有限(需要像ssd一样考虑磨损均衡) ...

  8. Linux文件系统与持久性内存介绍:块设备、闪存(NAND/NOR)、NVDIMM(非易失性内存)、PMEM(PMDK)- ndctl

    <持久内存开发套件(Persistent Memory Development Kit-PMDK) - pmem.io: PMDK> <PMDK介绍> <PMDK(NVM ...

  9. 非易失性NV-SRAM简介

    尽管闪存和其他非易失性存储技术已广泛用于实现嵌入式文件系统,但对于某些嵌入式应用程序来说可能太复杂了.在许多情况下的内存可以最有效地用作已预先初始化的数据结构.这种方法需要对数据完整性进行某种管理.本 ...

  10. 如何手动提取易失性数据

    在本文中,我们将运行几个CLI命令,这些命令可帮助取证调查人员尽可能多地从系统收集易失性数据.注意,我们在本文中使用的命令不是完整的命令列表. 在桌面上创建一个名为"case"的文 ...

最新文章

  1. orange pi java_[中文]Orange Pi家族各大成员一览表
  2. Java NIO学习笔记 三 散点/收集 和频道转换
  3. 单元测试 - mock异常
  4. 【系统架构】VC 开发辅助工具大收集
  5. Ubuntu编译并安装voip服务器软件Asterisk
  6. Android扫描wifi二维码自动连接wifi
  7. PMP项目进度网络图详解——第1篇:甘特图、PERT
  8. Jenkins插件源使用国内镜像中心的最新方法
  9. 一种面向业务流的内存管理算法
  10. js两只手指控制div图片放大缩小功能(2)
  11. wappush系统框架
  12. ubuntu卸载xilinx
  13. 内存分析(二) AVFrame
  14. 改善羽毛球比赛心理有“妙招”
  15. Windows操作系统中nacos下载、安装、运行、访问
  16. 【书籍阅读】深入了解SNMP知识的书籍
  17. vue中nextTick使用引起的一个小问题
  18. 计算机技术对艺术设计的影响,计算机技术对现代艺术设计的影响
  19. 第十一届泰迪杯B题:产品订单的数据分析与需求预测
  20. 油歌作品欣赏——工作的人最美

热门文章

  1. 3D打印gcode命令大全及解析
  2. Java的8种基本数据类型
  3. mac安装brew(亲测)
  4. creo绘图属性模板_CREO工程图模板创建
  5. 十折交叉验证 matlab,Matlab 十折交叉验证
  6. UmiJs整合Egg
  7. 思科CISCO ASA 5521 防火墙 Ipsec 配置详解
  8. 功能测试项目——酒店管理系统
  9. Mujoco-小球建模与控制
  10. Mujoco-一阶单摆建模与控制