VBA中的Application.Calculation,公式的计算方式

2023-11-05

《VBA经典应用69例》(10178981),是我推出的第九套教程,教程是专门针对初级、中级学员在学习VBA过程中可能遇到的案例展开,这套教程案例众多,紧贴“实战”,并做“战术总结”,以便大家能很好的应用。教程的目的是要求大家在实际工作中要利用好VBA。本套教程共三册六十九个专题,今日内容:应用2:VBA中的Application.Calculation,公式的计算方式395910517296cc28b2de32b1b0e860a7.jpeg

应用2  VBA中的Application.Calculation

大家好,我们今天开始第二个专题的应用讲解。本来这个应用没有列入我的写作计划之中,但碰巧,最近总有学员向我反馈类似的问题,说自己的程序运行缓慢,我查了一下大家发给我的程序文件,大多数是“公式自动计算”惹的祸。许多学员都是玩EXCEL的高手,在VBA转型期间还有写工作表函数的习惯,往往在EXCEL工作表中保留有大量的公式,每当工作表的单元格发生改变时,公式就要自动重新计算,从而浪费了大量的时间。那么如何解决这个问题呢?这讲给大家讲解。

1公式的计算方式

在当今世界,机器的大脑在数值计算方面可能比人的大脑工作速度快。比如,数学计算一些数值时,计算器、手机和笔记本电脑的使用可以确保快速准确地计算出结果,而大脑往往很难达到这种实际的需求,这是科学技术的发展带给我们实际生活的便利。

Microsoft Excel 可以让应用者使用各类公式,这些公式还可以反复使用。如果在一个单元格中选择公式并将其向下拖动,则可以轻松地将其复制到其他单元格中,结果将在每个单元格中进行相应地计算,其结果就是在工作表中往往会存在大量的公式。

在"公式"菜单下有一个名为"计算"的类别。它提供了三种计算模式选项:自动、除模拟运算表外,自动重算、手动。如下截图:

a951aaf39979922eff18fe04756f5057.jpeg

这些选项帮助我们决定何时以及如何在单元格中进行公式的计算。

① 自动默认情况下,所有计算都是自动的。例如,让我们假设单元格A1值为10,单元格B1 值为5。现在,在单元格C1中,如果我输入一个公式“=A1+B1”,然后按下回车,"15"将立即(自动)在单元格C1中可见。这意味着我们不需要手动调用计算。光标一离开单元格就会发生计算。

② 除模拟运算表外,自动重算此选项使 Excel 能够自动计算所有单元格,但涉及数据表的单元除外。此处的数据表并不意味着正常表,或明确通过外部连接加载的表。它具体是数据分析数据表(Data What-if Analysis Data Table)。什么是Data What-if Analysis Data Table呢?我们可以看下面的截图:

21836da6847eee6c3e4fb0fba6c28314.jpeg

对于数据分析表的应用大家可以去查找相应的资料,这里不做讲解。

③ 手动让我们假设与①有相同的场景,其中单元格A1值5和B1值10。C1单元格是A1和B1的总和:= A1+ B1。由于默认选项是"自动",我们可以看到 C1 的价值为 15。现在,将计算选项更改为"手动"。将 A1 值更改为 30,然后单击"回车"。你将看到C1值没有变化。手动单击同一菜单"公式与计算"中的"立即计算"选项(或者F9)。现在我们可以看到,C1单元格的值已经变为40。

4c1cd6d1c7079f0c525667f9d8354b48.jpeg

本讲内容参考程序文件:应用002.xlsm

【分享成果,随喜正能量】人与人之间都是相互的,你给人搭桥,别人为你铺路;你让人难堪,别人给你添堵;智慧越高的人,越是懂得相互成全。。

2be31d5f34a6567aea46288a80a7e2a4.jpeg

我20多年的VBA实践经验,全部浓缩在下面的各个教程中:


f1271d0d6a2dac71b9440634e3fdfa5d.jpeg

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

VBA中的Application.Calculation,公式的计算方式 的相关文章

  • 无法关闭打开的 Excel 工作簿

    我正在构建一个带有命令按钮 用户表单等的 Excel 文件 其中包含其他工作簿的链接 对于工作表上的命令按钮 我使用与用户表单中的命令按钮相同的代码 workbooks open path 使用用户表单命令按钮 添加以下内容 unload
  • 在 Excel 中将 x 轴的最大值和最小值设置为日期

    我有一个 X 轴上有日期的图表 我正在尝试使用 Excel VBA 设置该轴的最大值和最小值 下面是我的代码 似乎不起作用 有人可以帮忙吗 With ActiveSheet ChartObjects 1 Chart Axes xlValue
  • 使用 MS Access 在 Excel VBA 中运行代码

    我使用访问前端从 SQL Server 中提取查询 然后 我将记录集导出到新的 Excel 工作簿 然后我想使用 Excel 运行 Access 中的代码 它只是循环遍历单元格并添加格式并检查特定值 我可以从访问权限运行它 它将让工作簿打开
  • 变量的变化触发事件

    是否可以通过变量的更改来触发事件 例如 这将触发事件 Dim t As Integer Dim Fire As Boolean Private Sub Test t 0 Fire True IIf Fire t 1 t 2 End sub
  • 在 Access 表单上将控件分组在一起

    我有一个 Access2003 表单 我想将多个控件组合在一起并通过 VBA 代码以编程方式更改可见性 这可能吗 我确实知道我可以通过 格式 gt 组 对项目进行分组 但如果这样做 如何在代码中引用整个组 谢谢 您可以将所有控件放置在组框控
  • 如何使用 Excel VBA 根据货币标准格式化列中的数字?

    我想格式化一列的所有单元格 数据是一个数字 我想从左边添加一个小数 之后只保留两位数 然后根据货币标准对其进行格式化 例如 Data Output 10000 100 00 112233 1 122 33 123456789 1 234 5
  • VBA Excel 大数据操作需要很长时间

    我有两个Excel文件 第一个 Excel 文件包含 人员姓名 和 出席总天数 列 前任 PersonName TotalDays xyz abcd 另一个 Excel 文件包含人员姓名 日期和状态 出席 缺席 PersonName Dat
  • Windows 更新后 Excel 2010 ActiveX 控件不再工作 [重复]

    这个问题在这里已经有答案了 因此 在工作中 我在安装了最新的 Windows 7 更新 包括 Microsoft Office 2010 更新 后遇到了这个问题 更新的日期是今天 2014 年 12 月 12 日 更新后 我在 Excel
  • Excel VBA 更改命令按钮的颜色

    我在更改颜色时遇到问题CommandButton 在电子表格中 我添加设计按钮作为表单或 ActiveX 然后在 VBA 中我尝试 Activesheet shapes CommandButton1 visible false 这个效果很好
  • Excel VBA 中.Delete 和.Clear 的区别?

    有什么区别Worksheets 1 Cells Delete and Worksheets 1 Cells Clear 我问这个是因为我一直用 Clear清除我的工作表内容 但在我之前的帖子中我发现Worksheets 1 Cells De
  • 从磁盘加载多维 VBA 数组

    我正在尝试保存多维 VBA 数组 然后将其加载到磁盘或从磁盘加载 根据MSDN 网站 http msdn microsoft com en us library office gg278468 28v office 14 29 aspx 维
  • 用户窗体上的类对象 TextBox 可用方法

    我注意到 当我为文本框创建类模块并在表单上使用它时 通过在表单 init 事件中通过 VBA 添加 Enter 或 Exit 方法都不可用 当然 如果我只是在表单中添加一个文本框 我可以让 DblClick 方法正常工作 因此我的类设置正确
  • 将最后几个功能添加到我的调度模板生成器中

    感谢 StackOverflow 上的一些出色的人 我几乎完成了调度模板生成器的代码 我还想补充三件事 但我遇到了一些麻烦 当前细分 我有两张表 2 员工列表 和 X 模板 员工列表中的值是从单元格 D9 开始的一列员工姓名 然后将员工值转
  • 使用 VBA 的下拉菜单

    我需要使用 VBA 从下拉菜单中选择特定选项 我怎样才能做到这一点 链接到我们试图从中提取的网页 IE document getElementsByName down count click 我尝试过的代码 Full Module Priv
  • 输入新行并复制上面单元格中的公式

    我正在尝试创建一个 Excel 宏来执行以下操作 在文档末尾输入新行 复制上面单元格中的公式 到目前为止我有这个 Sub New Delta Go to last cell Range A4 Select Selection End xlD
  • 获取当前 VBA 函数的名称

    对于错误处理代码 我想获取发生错误的当前 VBA 函数 或子函数 的名称 有谁知道如何做到这一点 编辑 谢谢大家 我曾希望存在一个未记录的技巧来自行确定函数 但这显然不存在 我想我会保留当前的代码 Option Compare Databa
  • SQL Excel VBA 运行时错误 3709 无效连接

    这是我的第一个问题 欢迎提出建设性的批评 我正在尝试从 Excel VBA 查询 Access 数据库并将返回信息放入 Excel 范围中 我收到此错误 错误消息 运行时错误 3709 连接无法用于 执行此操作 在此情况下它已关闭或无效 语
  • 使用 ADODB 连接从关闭的工作簿中检索数据。某些数据被跳过?

    我目前正在编写一些代码 可以通过 ADODB 连接访问单独的工作簿 由于速度的原因 我选择了这种方法而不是其他方法 下面是我的代码 Sub GetWorksheetData strSourceFile As String strSQL As
  • 如何使用 VBA 添加 MS Outlook 提醒事件处理程序

    我想扩展 MS Outlook 以便当弹出日历提醒时 我可以运行一个可以运行外部程序 如批处理脚本 的 VBA 挂钩 就我而言 我想将提醒 转发 到 Linux 桌面 因为我在这两种环境中工作 并且 Windows 桌面并不总是可见 我看到
  • 无法使用 VBA 代码从 Excel 连接到 Teradata - 无法通过网络访问 Teradata 服务器

    我一直在尝试使用 vba 代码从 Excel 连接到 Teradata 但收到以下错误 无法通过网络访问 Teradata Server 我已经能够从 Teradata SQL 助手成功连接 并且还成功 ping 通 Teradata 服务

随机推荐

  • Kafka 入门三问

    目录 1 Kafka 是什么 1 1 背景 1 2 定位 1 3 产生的原因 1 4 Kafka 有哪些特征 消息和批次 模式 主题和分区 生产者和消费者 broker 和 集群 1 5 Kafka 可以做什么 Kafka作为消息系统 Ka
  • java开发中手动设置logback、jvm、容器的时区

    一 Logback xml配置日志输出时区为东八区 1 在日志格式配置后添加 CTT 或 GMT 8
  • electron 调试、问题追踪

    文章目录 前言 一 调试工具 1 生产环境调试工具 bugtron 2 日志 1 业务日志 2 网络日志 3 崩溃报告 二 捕获全局异常 1 开发网页时 2 在electron中全局异常捕获 3 从异常中恢复 保护用户界面 总结 前言 开发
  • Unity-世界坐标与屏幕坐标

    transform position x和transform position y的值含义是世界坐标 世界坐标与屏幕坐标有时一样 有时不同 这和Canvas的渲染模式有关 Canvas共有三种渲染模式 Screen Space Overla
  • 预处理等等

    预处理 define 宏定义是个演技非常高超的替身演员 但也会经常耍大牌的 所以我们用它要慎之又慎 它可以出现在代码的任何地方 从本行宏定义开始 以后的代码就就都认识这个宏了 也可以把任何东西定义成宏 因为编译器会在预编译的时候用真身替换替
  • Qt浅谈之一:内存泄露

    一 简介 Qt内存管理机制 Qt 在内部能够维护对象的层次结构 对于可视元素 这种层次结构就是子组件与父组件的关系 对于非可视元素 则是一个对象与另一个对象的从属关系 在 Qt 中 在 Qt 中 删除父对象会将其子对象一起删除 C 中del
  • 目标检测算法中,COCO评价指标的解析

    与图像分类的评价指标有所不同 图像分类是在所有的图像中分类正确和错误的概率 而目标检测显然不能这样来 那怎样才算检测正确 1 loU大于指定阈值 2 类别正确 3 confidence大于指定阈值 其实这三点在COCO评价指标当中都会运用到
  • AsyncContext优雅实现HTTP长轮询接口

    一 背景 接到一个需求 实现方案时需要提供一个HTTP接口 接口需要hold住5 8秒 轮询查询数据库 一旦数据库中值有变化 取出变化的值进行处理 处理完成后返回响应 这不就是长轮询吗 如何优雅的实现呢 二 方案设计 在 Spring 中
  • Bean和Map转换的工具类

    Bean和Map转换的工具类 依赖包 基于Spring的cglib 实现 如果是Spring项目 可以不引入依赖
  • allllll

    算法是解决某个问题所需要的方法和步骤 1分 A 对 B 错 Python程序是区分大小写的 1分 A 对 B 错 参考答案 A 不可以在同一台计算机上安装多个Python版本 1分 A 对 B 错 参考答案 B 解释程序对高级语言编写的程序
  • html中table分页显示,html中table表格分页

    表格分页 注 样式有点丑 但是功能是实现的 按照的是每页显示10数据加一行表头varmytable varmy new table var my href1 var my href2 var temp1 0 var temp2 0 var
  • TS实现原生数组方法之遍历:filter()

    function Array prototype filter description 循环遍历数组每个元素筛选出符合给定条件的元素组成的数组 param callback callback三个参数 1 当前值 2 当前索引 可选 3 当前
  • HashMap多个构造方法的理解

    1 创建HashMap除了常用的空方法 Map map new HashMap 2 还有一个入参的 这个入参并不是指创建大小为3的HashMap 而是创建大于3的最小2的n次方大小的HashMap 比如3 实际创建的长度为2 2 4 以此类
  • 一文打通ER图(手把手教你画)

    目录 什么是er图 什么是实体类型 什么是属性 什么是联系 一对一 一对多 多对多 注意点 例题解答 期末了 E R图也是大学课程设计中经常用到的 也是期末考的重点 毕竟大学生也没什么好考的 最近也有不少同学问 不少单子也扯到E R图 但是
  • 你还好吗

    最近突发奇想 假如某一天 我不在 这一行干了 那我又该去找什么样的工作 又该何去何从 活了二十几年 也没培养出什么兴趣爱好 也没什么特长优点 迷茫的人生 迷茫的我 我想听听你们的意见
  • openGauss学习笔记-09 openGauss 简单数据管理-创建数据库

    文章目录 openGauss学习笔记 09 openGauss 简单数据管理 创建数据库 9 1 语法格式 9 2 参数说明 9 3 示例 openGauss学习笔记 09 openGauss 简单数据管理 创建数据库 数据库安装完成后 默
  • 【爬虫进阶】猿人学任务六之回溯(难度3.0)

    目录 前言 分析 扣代码 Js改写 代码过程 结果 前言 本文讲解猿人学web题目第6题 内容难点如下 颜文字 JSUnFuck 分析 打开题目网站 F12 点击XHR 找出数据接口 看到请求参数这里 m是加密的 q是两个时间戳 全局搜索加
  • FindBugs错误修改指南

    1 EC UNRELATED TYPES Bug Call to equals comparing different types Pattern id EC UNRELATED TYPES type EC category CORRECT
  • 圆盘找数

    任务 三 圆盘找数 一 目的与要求 1 目的 使学生掌握数组的概念 阅读 编写和调试数组的要领 通过本实训可加深对于数组 最大值 最小值的理解和加强数组处理 分类求值 最大 小 值得求法等比较技术编程能力的训练 2 要求 1 根据问题域设计
  • VBA中的Application.Calculation,公式的计算方式

    VBA经典应用69例 10178981 是我推出的第九套教程 教程是专门针对初级 中级学员在学习VBA过程中可能遇到的案例展开 这套教程案例众多 紧贴 实战 并做 战术总结 以便大家能很好的应用 教程的目的是要求大家在实际工作中要利用好VB