怎么工作表中的数据老是自已在变?——这是易失性函数在作怪
发布时间:2023-01-26 00:23:18
怎么工作表中的数据老是自已在变?——这是易失性函数在作怪!请仔细看下图1中的工作表。
图1
当我们在工作表单元格中输入数据时,单元格B3和B5中的值都会自动发生变化。首先声明,我没有在工作表事件中编写VBA代码来实现这个自动变化的功能,而是在单元格B3中输入了公式:
=NOW()
在单元格B5中输入了公式:
=RAND()
那么,它们为什么会自动变化呢?
有时候,我们打开一个工作簿,并没有作任何修改或输入,在关闭该工作簿时,Excel却提示要保存修改,这又是为什么呢?
其实,这都是Excel的“易失性”函数在作怪。
在Excel中,存在着一些函数,每当Excel需要计算(包括重新计算、打开工作表或编辑工作表中的单元格)工作表的任意部分时,包含着这些函数的单元格也会同时进行重新计算,其值也会发生变化,这些函数称为“易失性函数”。
Excel的易失性函数有哪些?
一些Excel函数明显是易失性函数,包括:RAND函数、NOW函数、TODAY函数。
一些Excel函数看不出是易失性函数,包括:OFFSET函数、CELL函数、INDIRECT函数、INFO函数。
一些函数在有些Excel版本中是易失的但在另外的Excel版本中不是,例如在Excel 97中INDEX函数变成了非易失性函数。
一些函数在Microsoft的文档中描述是易失的,但在实际测试时似乎是非易失的,包括:INDEX函数、ROWS函数、COLUMNS函数、AREAS函数和CELL函数。
SUMIF的一个特殊语法在Excel 2002及后续版本中是易失的:
=SUMIF(A1:A5,”>0”,B1)是易失的,而=SUMIF(A1:A5,”>0”,B1:B5)是非易失的。
如何使一个用户自定义函数(UDF)成为易失的?
在创建用户自定义函数时,在第一行编写语句:
Application.Volatile True
可以让自定义函数为易失性函数。这样,一旦重新计算工作表,都会强制计算这个函数。
记住,该语句必须在用户自定义函数的第一行。
例如,下面的自定义函数模仿Excel内置的RAND函数:
Function InitateRand()
Application.Volatile True
InitateRand = Rnd()
End Function
在工作表单元格中输入公式:
=InitateRand()
将与RAND函数一样,在每次工作表重新计算时其值都会发生变化。
将’Application.Volatile(False)’应用于易失性函数能够使其成为不易失的吗?
无论什么情形,都不能将Application.Volatile(False)应用于内置的Excel函数,除非重新编写一个与内置函数作用相同的用户自定函数(UDF)并应用了Application.Volatile(False)语句。


猜你喜欢
- PS怎么去图片水印?今天和大家来分享一个去除图片背景中有很多相同水印的去除方法。有一些图片背景中会使用相同的logo来铺满背景,这样其他人在
- win10怎么强制恢复出厂设置?最近有小伙伴们在后台询问小编说自己的系统出现异常,想进行win10恢复出厂设置但是老是失败,不知道该怎么解决
- 尽管网易云音乐的功能很强大,但我们平时也是用来听听歌而已没有去怎么研究它,所以我们连如何查看私人fm播放记录都不知道。那么,网易云音乐电脑版
- Win10 2004里面有非常多实用的功能,无需下载安装第三方软件就可以协助我们日常办公生活。邮件是办公中必不可少的对外沟通方式,那么Win
- Word是财务工作人员常用的办公软件之一,下面的一些和财务工作相关的Word技巧应该对大家有所帮助。Word是财务工作人员常用的办公软件之一
- 众所周知,Leap Second翻译过来就是闰秒的意思,因为Linux系统要在每个月的月末把误差的时间调回来,就会出现一些列的问题,从而导致
- 在MAC的使用过程中,有时我们想要知道一些小的资讯,比如计算、航班以及日历等。这些是不需要大的应用程序的,只要一个小小的应用程序便可搞定。那
- 我们学过了word图表中的数据系列添加趋势的方法,word2007图表中的误差线常用于反映数据中不确定因素加或减的信息,可添加误差线的图表类
- 很多还在使用win7的用户在遇到系统问题或者故障的时候,肯定会先尝试自己系统还原,这是一个快速恢复电脑系统好方法。但是有的人在想要系统还原的
- 当我们常用的win7操作系统正式停止更新了之后有的小伙伴们对于目前的状况不知道要不要更新win10操作系统,对于win10系统具体是怎么更新
- 在word中,用户不仅可以使用Word文档模板新建Word文档,还可以根据当前打开的Word文档新建Word文档那么下面就由小编给大家分享下
- Microsoft office 是一款非常经典的办公软件套装。word2021 mac版强大文字处理软件给用户提供了用于创建专
- 有些用户在从win8系统升级到win8.1系统,安装准备重启时,系统显示“错误0x80004005”,导致系统安装失败。在遇到这样的问题,用
- WPS office作为一款比较实用的办公软件,具有文档编辑,表格制作,课件演示等功能。接下来小烟以WPS文字为例,下面小编马上就告诉大家怎
- 用wps编辑ppt进行工作汇报是许多用户的日常操作,不过ppt的内容如果过长,加上在汇报ppt的时候面对许多人时,往往容易紧张,所以很多小伙
- Excel中的排序功能具体该如何数据进行排序呢?下面是小编带来的关于excel按数据进行排序的教程,希望阅读过后对你有所启发!excel按数
- 绝对是干货。也绝对是大家常常需要的。今天来分享下offset是如何实现多行多列转单列的。我想得到单列怎么办:经过我的研究最终得到公式是=OF
- c反编译工具reflector怎么使用?c反编译工具reflector支持net程序和C语言之间来回切换,能够轻松把.NET程序集中的中间语
- adobe flash player对于许多网页来说是必要的组件之一,如果用户的电脑中缺少adobe flash player很有可能导致电
- 逗趣微视能赚钱吗?逗趣微视是一款非常好用的短视频软件,用户们在观看短视频的时候,还可以在里面赚钱,那么你知道要怎么赚钱吗?下面就给大家分享逗