当被修改后Excel重新计算工作簿时,计算引擎将通过计算最近修改的公式开始,然后对剩余的公式使用最新的计算序列。...如果计算引擎找到一个公式,该公式依赖于已被处理/修改(或者是易失的)但尚未计算的单元格,则会将公式重新安排到计算链的末尾,以便可以在未计算的单元格之后重新计算。...A3(其参数单元格A2的值显示为空),然后是单元格A2,接着又是A3,此时显示出其参数单元格A2的正确值。...使用将结果返回到多个单元格的数组用户定义函数是加速用户定义函数执行的一种非常好的方法(请参阅前面的文章),但是应该注意一个导致速度减慢的Bug: 当输入或修改多单元格用户定义函数并且取决于易失性公式时...条件格式公式中的用户定义函数 每次包含条件格式的屏幕部分被重新绘制或重新计算时,都会评估条件格式规则中的公式(可以通过在条件格式设置规则中使用的用户定义函数中使用Debug.Print语句来证明这一点)
本文主要探讨什么时候使用SUMPRODUCT函数更有效,而什么时候应该使用SUMIFS函数代替SUMPRODUCT函数。 下面是关于SUMPRODUCT函数使用的一些重要说明: 1....如果需要相乘的数组的维数不同,那么可以使用乘法运算符并将相乘的数组放在单个数组参数中。 6. 当需要将数组操作的结果相加时,可以在参数array1中包含单个数组操作。...图5:4个单元格区域相乘后的结果相加得到总压力 注意,如果SUMPRODUCT函数接受两个单元格作为其参数,但这两个单元格都为空,则结果是错误值,如下图6所示。 ?...如下图13所示,A2:A5=C2生成一个由逻辑值组成的数组,而SUMPRODUCT函数将逻辑值视为0,因此结果为0,而实际应该是2。 ?...什么时候使用SUMPRODUCT函数是最好的 类似于SUMIFS函数、SUMIF函数、COUNTIFS函数等都包含一个参数range或一个含有条件值的单元格区域的参数criteria_range。
1.表达式11mod 3的计算结果是什么? 2。11除以3商3余2,因此答案是2。 2.如果A为True而B为False,则表达式A Or B的计算结果是什么? True。这是很显然的。...End If块中的某些VBA语句总会执行吗? 不一定,除非还有Else子句。在条件为False时,If … End If语句内的语句不会被执行。...IIf函数评估条件,如果为True,则返回一个值;如果为False,则返回另一个值。 9.如何确保Do... Loop语句中的语句至少执行一次? 仅当条件置于循环末尾时,才能保证语句至少执行一次。...10.什么时候应该使用While ... Wend语句? 不需要。虽然仍被支持,但更灵活的Do ...Loop语句已取代了While... Wend。 11.可以在For......24.假设单元格区域引用单个工作表单元格,你如何知道该单元格是否为空? Range对象的Value属性返回一个空字符串。 25.Worksheet对象的UsedRange属性引用什么?
在使用IF函数时,我们经常会用到下面的结构形式: =IF(A1>1, B1, “”) 也就是说,如果大于指定值,则输入另一个指定值,否则为空。 然而,这会带来一些潜在的问题。...例如,在单元格B2中输入数值,在单元格B3中有一个公式,当B2中的值大于3时,输入B2中的值,否则输入空,如下图1所示。 ? 图1 可以看到,一切都很完美!...但是,修改单元格B2中的数值为1,此时的结果如下图2所示。 ? 图2 看到了什么?单元格B3中的值大于0,判断为TRUE;大于1000000,也判断为TRUE。这是怎么回事?...还是回到公式: =IF(B2>3,B2,"") 当条件不满足时,会在单元格中输入空。双引号里面没有包含什么,Excel将其视为文本,虽然什么也没有,但它仍然是一个文本字符串。...图3 当单元格B2中的值大于3时,B3中的值为B2中的值,否则为空(其实,此时该单元格中值为0,只是设置其字体颜色为白色,看不见而已)。
8.公式包含单元格引用A$10,将此公式复制到另一个单元格会怎样? 调整了列引用以反映目标单元格,但行引用保持不变。 9.一个工作表中的公式如何引用另一个工作表中的单元格? 通过使用语法工作表名!...单元格引用。 10.Excel如何从文本数据分辨出单元格公式? 所有公式均以字符“=”开头。 11.什么是循环引用? 当一个单元格中的公式引用另一个单元格时,该单元格直接或间接引用第一个单元格。...12.哪个Excel函数用于计算分期贷款的付款? PMT函数。 13.哪个Excel函数将数字值格式化为货币格式? DOLLAR函数。 14.是否可以在VBA代码中使用Excel函数?...16.在Excel中定义颜色时使用的三种原色是什么? 红色、绿色和蓝色。 17.设置哪个属性来更改单元格的背景颜色? Range.Interior.Color属性。...18.哪个单位用于测量工作表中列的宽度? 默认字体中一个字符的宽度。 19.调用哪种方法来调整列的宽度以适合其所容纳的数据? AutoFit方法。
如果在参数bins_array中有n个值,那么所选择的目标单元格区域应该包含n+1个单元格。 7.FREQUENCY函数忽略空单元格和文本。 8.如果有重复的bins_array,则重复的统计计数0。...(用于创建统计唯一值的公式) 9.在使用Ctrl+Shift+Enter的FREQUENCY函数被输入到目标单元格区域后,结果数组值将作为一个整体,不能删除其中的任意单元格。...图3:FREQUENCY函数忽略空单元格和文本 如下图4所示,重复的bins_array参数值将统计为0,这对于统计或提取不重复值的公式来说非常有用。 ?...图4:在参数bins_array中的重复值统计为0 示例:统计下限与上限之间数值的个数——FREQUENCY,COUNTIF或COUNTIFS 当想要统计上限与下限之间的数值个数,需要考虑如何构造分类并且是否包括上限和下限值...图6:COUNTIF和COUNTIFS函数能够处理更多的不同值范围计数情形 注:本文为电子书《精通Excel数组公式(学习笔记版)》中的一部分内容节选。
要求从单元格A2开始,使用公式生成一个列表,这个列表由上述非连续单元格区域中所有只出现了一次的数字组成(如图1所示,1、2和9这三个数字在非连续的单元格区域中只出现了一次)。 ?...图1 注意,虽然图1中在单元格区域C1:N12中有很多单元格为空,但解决方案的公式中要考虑这些单元格也可能存在数据的情况。 先不看答案,自已动手试一试。...另一个函数是MAX函数,也可以操作多个、非连续的单元格区域,因此: MAX(RNG) 能够得到组成RNG的单元格区域中所有数值的最大值,忽略逻辑值、文本。很显然,其返回的结果是9。...因为在AGGREGATE函数的第一个参数的所有可选项中,仅14-15能够保证在传递给函数的数组不是实际的工作表区域时能正常运行,而这里的数组是由其他函数生成的,如果设置成1-13中的任一个,则需要传递给函数的数组是实际的工作表区域...对于单元格A2的公式中来说,最后一个参数k的值是1,即ROWS(A$2:A2)的返回值。因此,AGGREGATE函数部分转换为: AGGREGATE(15,6,{#DIV/0!;1;2;#DIV/0!
每当Excel重新计算电子表格时,无论其引用的单元格有无变化,易失性函数都会重新计算。许多操作都会触发重新计算,例如在单元格中输入数据、插入行等。这样,易失性函数会增加公式的计算时间。...INDEX:查找行或列的公式 创建动态单元格区域的最基本的公式类型是基于条件来查找整行或整列值,可以使用INDEX函数实现。...图2:对于不同数据类型查找最后一行 在图2所示的公式[2]至[6]中,展示了一种近似查找值的技术:当要查找的值比单元格区域中的任何值都大且执行近似匹配(即MATCH函数的第3个参数为空)时,将总是获取列表中最后一个相对位置...图4:当有6条记录时查找单元格区域中的最后一项 使用INDEX和MATCH函数创建可以扩展和缩小的动态单元格区域 如下图5所示,在单元格E2中是一个数据有效性下拉列表,其内容来源于单元格区域A2:A5,...例如,如果公式使用潜在单元格区域C2:C50,并且最后一个数据位于单元格C25,那么不要再在单元格C49中输入数据,因为公式会将其考虑为该列的最后一个单元格。
有时候,当源数据区域中有空单元格时,TRANSPOSE函数将该单元格数据显示为0,如下图2所示。 ?...图3 MODE.MULT函数 在一组数中获取出现次数最多的数时,可以使用MODE函数或MODE.SNG函数,然而,当一组数中有多个出现次数一样且最多的数时,MODE函数或MODE.SNG函数只返回找到的第一个数...图7 TREND函数 使用TREND函数估计线性模型中的y值。有时候,我们需要使用数据来计算斜率和截距,以创建线性模型来辅助预测。...线性模型等式为: y=f(x)=mx+b 如下图8所示,使用了3个公式来预测学生的分数。 ? 图8 所有的4个函数(SLOPE、INTERCEPT、FORECAST、TREND)都要求知道y值和x值。...不像FORECAST函数每次都要重复计算,TREND函数仅计算m和b值一次,因此当处理大量数据时,其速度更快。 ? 图9 ? 图10
此外,它们被设计为从特定的源工作表复制到该示例工作簿中的另一个目标工作表。 通过调整对象引用的构建方式,可以轻松修改这些行为。...这种情形使用下列语法: expression.Copy 2.要复制Range对象到另一个区域(目标区域),使用参数Destination来指定目标区域。...例如,Sarah Butler(表中第一位销售经理)计算A项目总销售额的公式: 图5 只要目标单元格与源单元格完全相同,这些公式就不是问题。...例如,看看销售经理Walter Perry(表中第二位)计算B项目总销售额时使用的公式: 图6 该公式不使用项目B(显示在单元格F1中)的单价来计算销售额。...如果SkipBlanks设置为True,则被复制的单元格区域中的空单元格不会粘贴到目标单元格区域;如果设置为False,则粘贴空单元格。该参数默认值为False。
2005年,当基于数组的计算和线性代数包NumPy首次发布时,Python开始成为科学计算的一个重要替代品。NumPy组合了两个先前的包,因此将围绕科学计算的所有开发工作简化为一个项目。...如果你想想这是如何工作的,就会注意到一个单元格的值通常取决于一个或多个其他单元格,这些单元格可能会再次使用依赖于一个或多个其他单元格,依此类推。...测试 当告诉Excel开发人员测试他们的工作簿时,他们很可能会执行一些随机检查:单击一个按钮,查看宏是否仍然执行它应该执行的操作,或者更改一些输入,并检查输出是否合理。...然而,这是一种危险的策略:Excel使引入难以发现的错误变得容易。例如,可以使用硬编码值覆盖公式,或者忘记调整隐藏列中的公式。 当告诉专业软件开发人员测试他们的代码时,他们会编写单元测试。...如果你查看图1-1中的货币转换工具,可以编写一个测试,检查单元格D4中的公式是否正确返回105美元,输入值如下:金额为100欧元,汇率为1.05欧元。这有什么帮助呢?
标签:VBA 累加器是一个或多个单元格,用于保存输入的数值的总和。它们可以是单个单元格,如果A1=6,并且用户在A1中输入2,则显示的结果为8。...或者可以是两个单元格,比如说,在A1中输入的数字会立即与B1中的值相加。 构建累加器最可靠的方法是使用Worksheet_Change()事件。...当一个值被输入到单元格中时,该值被加到累加值上,并被放回累加器单元格中。 在两个单元格累加器中,一个单元格中进行输入,另一个单元格中显示总数。要重置累加器,只需手动清除累加器单元格中的值。...在单元格B1中输入下面的公式: =A1+B1 此时,每次在单元格A1中输入值时,单元格B1将其累加。...可以构造更复杂的累加器来有条件地添加累加值(例如,仅当A1>B1时),但通常情况下,这种类型的累加器是不可靠的,因为不能总是阻止用户重新计算,而且很少或根本没有机会进行更正。
什么是隐式交集(ImplicitIntersection)? 当Excel希望获得单个单元格引用但却提供给它单元格区域时,Excel会自动计算出单元格区域与当前单元格的行或列相交的区域并使用。...图1 在单元格B6中输入公式: =A:A 并不会返回整列A,而是返回第6行与列A相交的单元格值f。...例如,公式: =VLOOKUP(A4,$A:$C,3,false) 在列A至列C组成的区域中精确查找单元格A4中的内容,并返回列C中相应的值。...并且只将该单个单元格视为从属单元格,因此仅当该单个单元格被改变而不是当该单元格区域中的任何单元格被改变时,才重新计算公式或函数。...小结 1.在使用函数时使用隐式交集(Implicit Intersection)非常有效。 2.+号技巧非常好,但容易忘记使用! 3.像fImplicit这样的通用辅助函数比+号更快且更友好。
另一个优点是Jupyter笔记本不会混合数据和业务逻辑:Jupyter笔记本保存你的代码和图表,而通常使用外部CSV文件或数据库中的数据。...在本例中,它在下面插入一个空单元格,因为到目前为止我们只有一个单元格。更详细一点:当一个单元格在计算时,它显示在[*]中,当它完成时,星号变成一个数字,例如在[1]中。...接下来,我将以这种格式显示代码示例,例如,前面的REPL示例如下所示: In [1]: 3 + 4 Out[1]: 7 当通过按Shift+Enter来运行它时,将获得我在Out[1]下显示为输出的内容...单元格输出 如果单元格中的最后一行返回值,则Jupyter笔记本会在Out[]下自动打印该值。但是,当你使用print函数或出现异常时,它将直接打印在In单元格的下方,而不带Out[]标签。...此时,你的笔记本应该如图2-4所示。Markdown单元格还允许包含图像、视频或公式。 图2-4:运行一个代码单元格和一个Markdown单元格后的笔记本 编辑 VS.
例如,在计算输入到三个单元格中的三个值范围(间隔)时,一定要在四个单元格中输入FREQUENCY函数以获得结果,额外的单元格返回data_array中大于第三个间隔值的值的数量。...FREQUENCY函数忽略空单元格和文本。 返回数组的公式必须以数组公式输入。 统计不同值 仅数值 如下图1所示,在单元格区域B4:B12中有一列数值,我们想要知道有多少个不同值。 ?...首先,使用单元格值来代替单元格引用。注意,这个公式不是数组公式。...现在,我们对列表中有多少个1、2等不感兴趣,只是对它们中至少有一个感兴趣。我们使用>0比较数组中的每个元素,从而为我们提供一个逻辑值数组。...0)) 如果数据中只包含数字,这个公式也能正常工作,但这个公式对于更多的数据明显会比前面的公式慢。
如下图1所示,我想使用公式: =SUMPRODUCT(A1:G1,G2:A2) 但是,Excel总是将其修改为从左到右的单元格区域: =SUMPRODUCT(A1:G1,A2:G2) 图1 如何实现自己的目的呢...这是因为OFFSET函数只返回单元格区域引用,而不返回值。OFFSET函数使用第1个、第2个或第3个参数为数组的调用,返回一组单元格区域引用,当用于算术操作数或大多数函数的参数时,Excel无法处理。...N函数仅返回数值,将其他所有内容转换为0;T函数仅返回字符串,将其他所有内容转换为空;如果都想返回,使用CELL(“Contents”,…)。...注意,当使用公式求值或按F9键时,Excel不能直接显示OFFSET部分的内容,而是显示为#VALUE!。...例如,我想求单元格A1+A3+A5之和,如果使用公式: =SUM(OFFSET(A1,{0;2;4},0,1,1)) 无论是否以数组公式输入,返回的值都是单元格A1中的值。
你可能认为,计算最后一个单元格的价值时,我使用了不同的公式。那是因为填充之前的单元格时,我故意避开了一些复杂的因素。其实,计算每个单元格的价值时,使用的公式都相同。 这个公式如下。...你可以使用这个公式来计算每个单元格的价值,最终的网格将与前一个网格相同。现在你明 白了为何要求解子问题吧?你可以合并两个子问题的解来得到更大问题的解。...使用动态规划时,要么考虑拿走整件商品,要么考虑不拿,而没法判断该不该拿走商品的一部分。 但使用贪婪算法可轻松地处理这种情况!...当我在纸上画这个网格,逐个元素去填值计算的时候,边上的土豪QA妹子,应该不应这么纠结,多待两天都逛完了。可见钱能解决90%的问题。...动态规划功能强大,它能够解决子问题并使用这些答案来解决大问题。但仅当 每个子问题都是离散的,即不依赖于其他子问题时,动态规划才管用。
特别提醒:此函数通常与IF函数配套使用,如果将上述公式修改为:=IF(ISERROR(A35/B35),” ” ,A35/B35),如果B35为空或“0”,则相应的单元格显示为空,反之显示A35/B35...OR函数:仅当所有参数值均为逻辑“假(FALSE)”时返回结果逻辑“假(FALSE)”,否则都返回逻辑“真(TRUE)”。 RANK函数:返回某一数值在一列数值中的相对于其他数值的排位。...25、OR函数 函数名称:OR 主要功能:返回逻辑值,仅当所有参数值均为逻辑“假(FALSE)”时返回函数结果逻辑“假(FALSE)”,否则都返回逻辑“真(TRUE)”。...使用格式:SUBTOTAL(function_num, ref1, ref2, …) 参数说明:Function_num为1到11(包含隐藏值)或101到111(忽略隐藏值)之间的数字,用来指定使用什么函数在列表中进行分类汇总计算...代表需要在其中查找数据的单元格区域;Col_index_num为在 table_array区域中待返回的匹配值的列序号(当Col_index_num为2时,返回table_array第2列中的数值,为3
下面是淘宝婴儿数据,“购买数量”虽然看上去是数字,但其实是文本格式。 文本格式用于计算会发上什么情况呢? 下面图片中对“购买数量”这一列求和,结果就是错误的。...输入公式后按回车键,可以看到数值结果(数值格式在单元格靠右) 把鼠标放置在F2单元格右下角,当出现十字标志时双击即可完成整列公式填充。然后用求和函数就可以看到结果啦。...比如,工作中经常遇到输入的是18位的身份证号码,Excel却显示的是指数形式,当再次双击查看编辑单元格时,后3位数字已经显示为000。...下面图片是把“商品类别”的数字处理为文本格式。 方法3)巧用文本连接符&,用&去连接一个空值的方法完成转换 问题3:怎样让“假”日期改成“真”日期格式? 什么是假日期呢?...日期的本质是数字,标准格式的“真”日期,能够和数字进行加减运算,也可以通过右键单元格来改变日期显示形式,但”假日期”做不到。
你已经学到了许多技术,弄清楚为什么一个公式正在做它该做的事。 弄清楚特定数组公式工作逻辑的技巧: 1.将公式分解成尽可能小的部分,将每部分放置在单独的单元格中,这可以让你看到每部分是如何工作的。...2.当公式在单个单元格中时,运行“公式求值”命令(按Alt,M,V键,或者选择功能区“公式”选项卡“公式审核”组中的“公式求值”)。“公式求值”功能对于看到公式计算时Excel所遍历的步骤是非常好的。...3.使用评估公式元素技巧,当公式在单元格中处于编辑模式时,按F9键评估公式的每个单独部分。这是一个非常宝贵的技巧,用来学习公式是如何做的。在使用F9键评估公式元素后,记得使用Ctrl+Z撤销评估。...7.输入完整的公式后,将该单元格进入编辑模式,可以按F9键来评估公式的每个部分。当完成查看每个公式元素评估的结果后,按Esc键返回到单元格中的公式。...当你弄清楚并掌握后,这一切的工作都是值得的。 查找包含空单元格的行中的第1个数据项 下图1展示了一个数组公式,获取一行中的第1个非空单元格中的数值。
领取专属 10元无门槛券
手把手带您无忧上云