当单元格结果按公式更改时运行宏

2024-01-01

我需要什么:每当单元格 C3 返回与当前不同的值(基于其公式,而不是基于手动键入不同的值)时,我们将要触发的宏称为“MacroRuns”。

我花了一整天的时间阅读并尝试了关于这个主题的谷歌搜索的前两页上的每个“解决方案”。到目前为止,似乎没有什么对我有用。请帮忙!!!我将非常感激!

Example:

我现在已经尝试过此操作,但在运行几次后它会损坏我的文件。

Private Sub Worksheet_Calculate()
    If Range("E3") <> Range("C3").Value Then
        Range("E3") = Range("B3").Value
        MsgBox "Successful"
    End If
End Sub

Module1、Sheet1(计算)、ThisWorkbook(打开)

强调

  • 当工作簿打开时,值来自C3被公众宣读 多变的TargetValue via TargetStart.
  • 当值在C3正在计算中,TargetCalc已激活 通过计算事件。如果当前值C3不同于TargetValue, MacroRuns被触发并且TargetValue更新为中的值C3.

The Code

Module1

Option Explicit

Public TargetValue As Variant
Private Const cTarget As String = "C3"

Sub TargetCalc(ws as Worksheet)
    If ws.Range(cTarget) <> TargetValue Then
        MacroRuns
        TargetValue = ws.Range(cTarget).Value
    End If
End Sub

Sub TargetStart()
    TargetValue = Sheet1.Range(cTarget).Value
End Sub

Sub MacroRuns()
    MsgBox "MacroRuns"
End Sub

本练习册

Option Explicit

Private Sub Workbook_Open()
    TargetStart
End Sub

Sheet1

Option Explicit

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

当单元格结果按公式更改时运行宏 的相关文章

  • Outlook 无法识别一个或多个姓名

    我有以下 vba 代码 它读取邮箱并向任何发送无效代码作为邮箱回复的用户发送回复 但有时会收到运行时错误 Outlook 无法识别一个或多个名称 我的问题是 创建新的 MAPI 配置文件是否可以解决该问题 或者我是否需要添加一个代码来解析地
  • 在Google电子表格中划分整列

    我是 Google 电子表格的一个相对较新的用户 我希望 B 列中的每个单元格都是 A 列 同一行 中内容除以 5 的结果 B1 B2 B3 等 商 应为 A1 A2 A3 等 被除数 除以 5 除数 在示例中 B1 A1 5 我知道一项一
  • 在 MS Word 中运行外部 vba 代码

    我可以将外部代码链接到 Word 文档吗 我有很多带有宏的 Word 文档 VBA 代码 全部使用相同的代码 我希望代码从外部源运行 而不是从所有这些文档中运行 这样 如果我必须更新代码 我只有一个地方需要更新 您可以创建一个模板并将其放入
  • 读取R中打开的Excel文件

    有没有办法将打开的Excel文件读入R 当Excel中打开一个excel文件时 Excel会对文件加锁 比如R中的read方法无法访问该文件 你能绕过这个锁吗 Thanks 编辑 这发生在带有原始 Excel 的 Windows 下 发生错
  • 无法摆脱脚本中的硬编码延迟

    我用 vba 结合 selenium 编写了一个脚本来解析网页中可用的所有公司名称 该网页启用了延迟加载方法 因此每个滚动中只有 20 个链接可见 如果我滚动 2 次 则可见链接数为 40 个 依此类推 该网页中有 1000 个可用链接 我
  • Excels COUNTIFS 函数中的数组作为条件,混合 AND 和 OR [重复]

    这个问题在这里已经有答案了 我已经在谷歌上搜索了一段时间 但似乎无法让它发挥作用 我使用 Excel 2010 希望混合使用 AND 和 OR 运算符来计算行数 我想做的是这样的 COUNTIFS A A string1 B B strin
  • SpreadsheetML 文件扩展名被 IE 和 FF 更改 - 内容类型错误?

    我正在 PHP 中生成 SpreadsheetML 文件 当用户下载文件并保存时 默认情况下文件会另存为 Report xml 并在 Excel 中打开 但是 如果选择在 Excel 中打开文件而不是保存文件 则文件名将更改为 Report
  • 所以,我有 6 个“主”文件,然后分为 40 个单独的文件

    我将简要描述我想要的内容 我有 6 个 主 文件 每个文件包含 40 个工作表 如下所示 AG 工作簿有 HR Gp 1 到 HR Gp 40 ER 工作簿有 FB Gp 1 到 Gp 40 等 所有工作表都已 平坦 我已经成功创建了一个适
  • 将 Excel 范围转换为 VBA 字符串

    我想将给定范围内的值转换为 VBA 字符串 其中原始单元格值由任何选定的列分隔符和行分隔符分隔 分隔符可以是一个字符或更长的字符串 行分隔符是行末尾的字符串 该字符串应该像我们从左上角 从左到右 到右下角读取文本一样完成 以下是范围 A1
  • 使用自定义功能区时是否可以阻止 MS Access 自动更改选定的功能区选项卡?

    当使用自定义 UI XML 文件在 Access 中添加多个自定义功能区选项卡时 每当关闭窗体时 选定的功能区选项卡都会变回第一个自定义选项卡 我们从 VBA 以编程方式加载自定义功能区 我已经创建了重现问题的 accdb http sdr
  • Redim Preserve 给出“下标超出范围”

    我想要Redim Preserve一个数组我不断收到错误 下标超出范围 我知道只有最后一个维度的大小可以更改 这正是我正在做的事情 这里出了什么问题 数组的类型是Variant BmMatrix Sheets BENCH Range a60
  • 启动时的 Excel 加载项

    我正在使用 Visual C 创建 Microsoft Excel 的加载项 当我第一次创建解决方案时 它包含一个名为 ThisAddIn Startup 的函数 我在这个函数中添加了以下代码 private void ThisAddIn
  • 使用宏打开受信任文档或启用宏时 Excel 崩溃

    正如标题所示 我无法使用宏打开受信任的文档 Excel 立即崩溃 制作文档的副本允许其打开 因为该副本不受信任 并且我可以检查 VB 编辑器中的宏 但启用宏会导致另一次崩溃 为什么会发生这种情况以及我可以采取什么措施来解决它 我今天遇到了类
  • Excel 2013 数据透视表不会更改当前页面,除非手动导航到

    我们有一小段 VBA 代码 多年来一直完美运行 本质上是 Me PivotTables APivot PivotFields AField CurrentPage Some text 这种方法一直有效 直到 Excel 2013 该行将失败
  • 使用 ClosedXML 创建数据透视表

    我正在尝试使用 ClosedXML V0 91 1 创建数据透视表 但我不断遇到问题 因为我的 Excel 文件包含不可读的内容 然后 Excel 工作簿在单击时删除了我的数据透视表Yes below 下面是我击中时的显示Yes 它正在删除
  • 是否存在用于开放 xml Excel 编辑的良好包装类和/或库?

    我正在寻找一个不错的库 用于在我们的 Windows 服务器上编辑和 或生成 Excel 文档 我觉得 open xml sdk 可能是可行的方法 但对我来说 学习曲线似乎很陡峭 而且我们的开发时间有限 我认为编辑 Excel 文档不应该那
  • Excel 2010 在 IF 函数中搜索文本 - 单独的单元格数据

    Program Excel 2010 Require 一种将名字 姓氏 电子邮件提取到各个单元格的方法 Data 我的数据有一个包含原始 脏数据 的表 它是原始的并且一团糟 我用一个简单的方法整理它 IF A7 Order 1 然后其余单元
  • 将 Excel 文件读入 R 并锁定单元格

    我有一个 Excel 电子表格要读入 R 它受密码保护并锁定了单元格 我可以使用 excel link 导入受密码保护的文件 但我不知道如何解锁 取消保护单元格 excel link 给了我这个错误 gt
  • 如何使用 php 将 *.xlsb 转换为数组或 *.csv

    我正在尝试转换 xlsb文件到php array or csv文件 或至少 xls 我尝试使用PHPExcel 但看起来它无法识别该文件中的内容 我注意到 你可以重命名 xlsb文件到 zip文件 然后使用命令行解压缩unzip zip 之
  • Access / Word 2010 VBA 邮件合并尝试打开 [文件夹名称].mdb 而不是 ACCDB 源

    我们正在尝试从 Access 中自动执行邮件合并过程 单击按钮后 VBA 将运行指定当前数据库 accdb 作为数据源并运行 SQL 具体代码如下 Set up Word Dim objWord As Object Set objWord

随机推荐

  • 快速聚焦文本字段

    我在注册屏幕上有 4 个文本字段 我将其设置为当用户在每个文本字段上按 下一步 时 下一个文本字段将获得焦点 代码如下 func textFieldShouldReturn textField UITextField gt Bool if
  • Enterprise Architect 项目编程语言

    在Enterprise Architect中 当我对类进行建模并指定该类的实现语言 然后在用例中使用该类的实例时 用例中实例的实现语言不是该类的实现语言 而是默认值 有没有办法让Enterprise Architect使用该类设定的实现语言
  • 输出具有多个工作表的单个 Excel 文件

    Talend Open Studio for Data Integration 中是否有一个组件能够输出单个 Excel 文件 但其中包含 2 个单独的工作表 我想将原始文件中的一些列分隔到另一个工作表中 并将另一组列分隔到第二个工作表中
  • 使用 ksoap2-android 订阅共享点 Web 服务时出现身份验证错误

    我正在编写一个Android应用程序 它将使用sharepoint 2010中lists amx服务的getlist 方法 我正在使用kso ap2 android来处理我的soap消息 当我尝试进行身份验证时 出现预期的 xmlpullp
  • AlarmManager 阻塞主线程

    我已经实现了一个调用服务的 AlarmManager 问题是 虽然我在 AsyncTask 中启动它 但它阻塞了主线程 这是我的 AsyncTask 的来源 private class NotificationsServiceTask ex
  • 按最大大小将 numpy 数组拆分为块

    我有一些very大型二维 numpy 数组 一个数据集有 55732 x 257659 个元素 超过 140 亿个元素 因为有些操作我需要执行 throwMemoryErrors 我想尝试将数组分割成一定大小的块 然后针对这些块运行它们 我
  • 我们可以在 Android 中通过用户的电话号码找到用户吗?

    Android 中是否可以通过用户的电话号码找到用户 如果可以向用户发送短信 那么我们还可以检索或了解发送短信的用户的位置 我的意思是是否可以对以下功能进行编程 应用程序发送短信到用户的手机 应用程序在用户的手机上接收来自短信发送者的短信
  • C++ 中的字符指针

    我对 C 中的字符指针有疑问 每当我们在 C 中创建字符指针时 char p How are you doing p 应该包含保存值 how are you getting 的内存位置的地址 但是 我对示例代码和输出感到困惑 为什么cout
  • 在Unity3d中使用Android陀螺仪,如何将初始相机旋转设置为初始移动设备旋转?

    我想使用Android陀螺仪在Unity3d的标准第一人称控制器上执行头部跟踪 我创建了一个简短的脚本 用于旋转第一人称控制器的父节点和相机子节点 该脚本附在相机上 这个脚本运行得很好 它根据我的移动设备的移动旋转第一人称视图 但是 只有当
  • Django + docker + 周期性命令

    使用 docker docker compose 运行 Django 时 运行定期 计划任务 如 manage py custom command 的最佳实践是什么 FE最常见的情况 manage py 清除会话 https docs dj
  • 在 Laravel Eloquent 中使用“With()”函数获取特定列

    我有两张桌子 User and Post One User可以有很多posts和一个post只属于一个user In my User型号 我有一个hasMany关系 public function post return this gt h
  • 大整数转十六进制

    快速提问 我有一个愚蠢的长BigInteger我想将其作为十六进制字符串写入文件 我知道Java提供了 toString 16 方法可以做到这一点 但我在 C 中找不到等效的方法 我在用着System Numerics BigInteger
  • 使用 XTS 进行 Rbind。如何堆叠而不按索引日期排序

    我正在使用 Quantmod 来生成带有股票信息的 XTS 对象 并且我希望编译 堆叠一堆 XTS 文档来处理代码 将 Rbind 与 XTS 结合使用 我发现它不会将 XTS 堆叠在一起 而是按日期进行合并和排序 x lt xts 1 1
  • 确定表单上是否存在字段

    我有一个从数据库动态创建的表单字段 一系列复选框 因此表单上可能不存在该字段 如果数据库中没有匹配的值 我有一些代码需要根据字段是否存在来执行 并提取所选值 如果存在 不过 我似乎无法让 javascript 承认该字段的存在 这是我尝试过
  • 当应用程序处于打瞌睡模式时,警报管理器触发的 Android 通知不会触发

    我有以下要求 用户需要能够在我的应用程序中安排定期提醒 以便在某个时间触发推送通知exact每天的时间 这是我希望我最终不会提交的问题之一 因为在撰写本文时推荐了类似的问题 然而 一些团队成员花了很多时间浏览 Android 开发人员文档和
  • 使用 Cakephp 3 用户名或电子邮件登录

    我想使用用户名或电子邮件登录 所以我想动态更改 Auth 字段 如何像 Cakehp 2 那样修改 this gt Auth 字段 在 cakephp 2 中你可以这样做 this gt Auth gt authenticate array
  • Java 7 -> Java 8:AES 导致异常:“BadPaddingException:给定的最终块未正确填充”与 BufferedReader 和 ZipStreams 结合使用

    我们使用以下语句实例化密码 Cipher cipher Cipher getInstance AES SecretKeySpec key new SecretKeySpec cipherKey AES 这适用于 java 7 1 7 45
  • 如何从子组件显示应用程序级别的警报

    我想要一些规则或建议来做到这一点 我有一个应用程序级别的警报 我想在我的组件之一发生某些情况时显示该警报 例如 保存信息已成功或失败 另外 如何发送我想要显示的不同文本 有 ViewChild 的等价物吗 感谢您的帮助 我会这样做Obser
  • 从 django list_filter 中删除重复项

    我在 django admin 中对相关对象中的字段使用列表过滤器 class A models Model pass class B models Model fk models ForeignKey A val models CharF
  • 当单元格结果按公式更改时运行宏

    我需要什么 每当单元格 C3 返回与当前不同的值 基于其公式 而不是基于手动键入不同的值 时 我们将要触发的宏称为 MacroRuns 我花了一整天的时间阅读并尝试了关于这个主题的谷歌搜索的前两页上的每个 解决方案 到目前为止 似乎没有什么