Access/Excel VBA - 时间延迟

2023-11-29

Note:

  1. 刷新 Excel 中链接到 Access 数据库的表

  2. Excel 中的表需要按顺序刷新,例如 Test_Sheet1、Test_Sheet2、Test_Sheet3

  3. Excel 文件由多个用户访问

问题

在 Access vba 中,如果正在使用 Excel 文件(只读),如何在 Access vba 代码中实现延迟以等待文件被读/写,以便它可以继续执行代码(刷新表、保存/关闭文件)。请注意,Excel 文件确实需要按顺序刷新。

我确实实现了一个带有时间延迟的错误处理,所以如果错误号 = 1004 则延迟 X。 这并没有真正完成工作。

VBA 中的时序延迟

Function RefreshExcelTables()


Dim ExcelApp As Object
Set ExcelApp = CreateObject("Excel.Application")

ExcelApp.workbooks.Open "c:\test\Test_Sheet1.xlsb"
ExcelApp.ActiveWorkbook.refreshall
ExcelApp.ActiveWorkbook.Save
ExcelApp.ActiveWindow.Close


ExcelApp.workbooks.Open "c:\test\Test_Sheet2.xlsb"
ExcelApp.ActiveWorkbook.refreshall
ExcelApp.ActiveWorkbook.Save
ExcelApp.ActiveWindow.Close


ExcelApp.workbooks.Open "c:\test\Test_Sheet3.xlsb"
ExcelApp.ActiveWorkbook.refreshall
ExcelApp.ActiveWorkbook.Save
ExcelApp.ActiveWindow.Close



Set ExcelApp = Nothing


End Function

弹出消息(下图)

enter image description here

Update

Function RefreshExcelTables()

On Error GoTo Error

Dim ExcelApp As Object
Set ExcelApp = CreateObject("Excel.Application")

ExcelApp.workbooks.Open "c:\test\Test_Sheet1.xlsb"
ExcelApp.ActiveWorkbook.refreshall
ExcelApp.ActiveWorkbook.Save
ExcelApp.ActiveWindow.Close


ExcelApp.workbooks.Open "c:\test\Test_Sheet2.xlsb"
ExcelApp.ActiveWorkbook.refreshall
ExcelApp.ActiveWorkbook.Save
ExcelApp.ActiveWindow.Close


ExcelApp.workbooks.Open "c:\test\Test_Sheet3.xlsb"
ExcelApp.ActiveWorkbook.refreshall
ExcelApp.ActiveWorkbook.Save
ExcelApp.ActiveWindow.Close

Error:

If Err.Number = 1004 Then

call pause(5)

Resume

End If

Set ExcelApp = Nothing


End Function



Public Function Pause(intSeconds As Integer)

Dim dblStart As Double

If intSeconds > 0 Then

dblStart = Timer()

Do While Timer < dblStart + intSeconds

Loop

End If

End Function

我曾经用它来暂停代码处理:

Public Function Pause(intSeconds As Integer)

    Dim dblStart As Double

    If intSeconds > 0 Then

        dblStart = Timer()

        Do While Timer < dblStart + intSeconds
            ' Twiddle thumbs
        Loop

    End If
End Function

所以你会:Call Pause(1)无论您在哪里需要暂停,它都会等待一秒钟。

如果您只需要以整秒为增量进行延迟,则效果很好。我还有另一个更强大的代码,其中包含更多代码,如果您需要的话,可以将其用于更小的增量。

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

Access/Excel VBA - 时间延迟 的相关文章

  • 如何使用 C# 在 MS Excel 单元格中添加数字验证

    我的目标是限制用户在 MS Excel 单元格中仅输入 1 到 100 范围内的值 我正在以编程方式生成 Excel 文件 但是当我添加上述验证时 抛出异常Exception from HRESULT 0x800A03EC 我写的代码如下
  • 关闭工作簿时删除范围,xls vba

    我想要范围 Range A2 G z 关闭工作簿时删除 有人可以帮我处理代码吗 谢谢 凯 这就是我尝试过的 Option Explicit Sub Makro1 insert clipboard Workbooks Pfl SchutzSt
  • Excel 中使用通配符 {*} 进行 Vlookup

    我有下表 现在 我想检查主题是否具有数据中存在的任何文本 col F I used VLOOKUP A2 F F 1 0 但它正在给予 N A Try 公式为B2 SUM COUNTIF A2 F 2 F 3 gt 0 Edit SUM C
  • 导入到 SQL Server 时忽略 Excel 文件中的列

    我有多个具有相同格式的 Excel 文件 我需要将它们导入 SQL Server 我当前遇到的问题是 有两个文本列我需要完全忽略 因为它们是自由文本 并且某些行的字符长度超出了服务器允许我导入的长度 这会导致截断错误 因为我的分析不需要这些
  • VBA全局类变量

    我的障碍是试图让多个子程序识别类变量 当我尝试全局声明它们时 出现编译错误 无效的外部过程 然后 当我运行公共函数或子函数来声明变量时 它们在其他子函数中保持未定义状态 我希望多个子程序能够识别变量 因为它们的值应该通过用户窗体进行更改 然
  • 使用 VBA 使用另一个表中的值更新访问表

    我在数据库中有两个表 表 1 和表 2 我正在尝试根据表 2 中的数据使用 VBA 代码更新表 1 Example Table 1 PartNo Price Description A 100 B 200 Bad C 300 Table 2
  • 如何VBA等待Windows保存对话框和发送密钥

    我正在创建一个宏文件 用于下载并保存从 SAP 旧版本 7 20 中提取的数据 当出现保存对话框时 未检测到 Windows 对话框 因为我的客户端 SAP 版本是旧版本 7 20 现在我对此的解决方案是发送密钥 但问题是某些数据包含大量数
  • 正在使用的 VBA 监视文件

    我正在寻找一些东西 Win API 调用或其他 来在文件可供编辑 即不再使用 时通知我 我应该设置一个计时器来按一定时间间隔检查文件还是有一个好方法对文件设置监视 FileSystemWatcher 没有帮助 Win32 FindFirst
  • VBA 中的求和函数

    我在 vba 中对单元格求和时遇到问题 我需要使用单元格 a b Range A1 function SUM Range Cells 2 1 Cells 3 2 但它不起作用 函数不是范围内的属性 方法 如果您想对值求和 请使用以下命令 R
  • Sharepoint Server 对于 Excel Services 或 Excel Web Access 是必需的吗

    Excel Services 和 Excel Web Access 随 Microsoft Office SharePoint Server 2007 一起提供 我想知道是否可以在不运行 Sharepoint Server 的情况下使用 E
  • Excel ISNUMBER 函数与 IF 语句

    我有一个正在使用的 Excel 文件 有一个列包含数字和文本 有时只是其中之一 我正在尝试编写一个函数来扫描单元格的最左侧部分以查看它是否以数字开头 我以为我拥有它 但显然没有 这就是我所拥有的 IF ISNUMBER LEFT E8 1
  • Excel宏隐藏特定单元格和合并区域

    我试图根据另一个单元格的值隐藏特定单元格 到目前为止 我设法隐藏整行 但无法隐藏特定单元格 Local Currency value show hide item If Range Currency Value USD Then Range
  • excel使用单元格引用作为逻辑运算符并查找值

    我有一个表来查找这样的值 logical test points lt 0 1 lt 10 2 lt 20 4 gt 20 5 如果我的单元格 例如 A1 如果我的单元格 如果我的单元格 gt 20 则结果为 5 我可以为此使用多个 if
  • Excel,多个 IF AND 更高效的公式

    我正在制作一个电子表格 如下所示 Index Diff Exc Sym Sec Result Criteria Met 3 42 2 07 0 86 0 92 1 83 1 95 0 38 2 93 0 87 0 23 2 01 0 09
  • Excel,循环遍历 XLSM 文件并将行复制到另一个工作表

    我现在遇到的此代码的主要问题是处理我打开的 xlsm 文件的错误 我对这些文件的 VB 代码没有编辑权限 如果 vb 出错 有没有办法跳过文件 我有一个包含大约 99 个 xlsm 文件的文件夹 我希望循环遍历每个文件并复制每个工作簿中的第
  • 将 CSV 导入 Excel - 自动“文本到列”和“插入表格”

    我想在 Excel 2010 上打开 CSV 逗号分隔 文件并自动将文本转换为列 然后选择所有活动单元格并插入带标题的表格 是否可以在我的功能区中添加一个按钮来为我完成这一切 我经常使用不同大小的 CSV 文件 我发现每次手动执行此操作有点
  • 规范化现有的 MS Access 数据库

    我有一个大型访问数据库 需要将其规范化为五个表和一个查找表 我了解标准化背后的理论 并且已经勾勒出表格的外观 但我不知道如何转换我的表格以使数据库标准化 表分析器没有提供我想要的细分 如果您只有一个表 请向其中添加自动编号字段 然后创建其他
  • 在适用于 Windows 和 Mac 的 VBA 中指定用户文件夹的路径

    我正在编写一个使用 VBA 从 Excel 生成文件的工具 生成的文件将写入用户的 Documents 文件夹中的文件夹 如果存在 e g C Users
  • VBA删除列中的单元格并根据单元格的值左移?

    如果单元格为空 如何删除 B 列 和左移 中的单元格 下面是我所拥有的 但它给出了 应用程序定义或对象定义的错误 Sub DeleteCellShiftLeft For i 1000 To 1 Step 1 If Cells i B Val
  • 将应用程序从 Microsoft Access 迁移到 VB 或 C#.NET

    我目前正试图说服管理层需要将我们的应用程序之一移植到 NET 该应用程序已经发展成为 Access 中的一个庞然大物 SQL 后端 拥有 700 个链接表 650 个表单 子表单 130 个模块和 850 个查询 我几乎知道这样做的所有主要

随机推荐

  • Java 字符串连接

    我的 java 代码有问题 我昨天问了同样的问题 我得到了答复 但很抱歉这是我的错 我的问题不清楚 我的代码如下所示 for i 0 i lt geo getTargets length i if geo getTargets i getT
  • 如何以编程方式打开受密码保护的 PDF 文件?

    Adobe IFilter 不提供提供密码来打开受密码保护的 PDF 文件的机制 因此它不能用于打开受密码保护的文件 我想知道 是否有一种相对简单的方法来以编程方式检索 PDF 文件中的实际加密数据 使用标准加密 API 对其进行解密 然后
  • 如何在图形和子图周围添加边框或框架

    我想创建这样的图像 但我无法将各个图放入框架内 图形和坐标轴都有一个 patch 属性 它是构成背景的矩形 因此 设置图形框架非常简单 import matplotlib pyplot as plt fig axes plt subplot
  • jQuery 和 AJAX 登录表单

    我正忙于开发一个网站 右上角有一个登录框 我希望用户能够在同一页面上登录 而无需刷新 好的 我已经完成了该部分的工作 但我仍然在登录后过程中苦苦挣扎 我的外观如下 HTML li class login li PHP session sta
  • 使用jquery动态改变背景颜色

    现在我的页面的一部分有一个对象列表 当您将鼠标悬停在它们上方时 背景会变成浅黄色 并在鼠标移开时恢复为白色 我希望其中一个对象在满足条件时变成绿色背景 如果不满足则恢复正常 我遇到这种情况有一个问题 如果满足条件 它会改变颜色 如果不满足
  • 如何避免在 Excel 文件下载过程中出现 Response.End()“Thread was being aborted”异常

    我尝试将数据集转换为 Excel 并下载该 Excel 我得到了所需的 Excel 文件 但是每次 Excel 下载都会引发 System Threading ThreadAbortException 如何解决这个问题 请帮我 我在我的 a
  • 手机上测试Admob时DEVICE_ID_EMULATOR和TEST_EMULATOR的区别

    使用 TEST EMULATOR 和 DEVICE ID EMULATOR 有什么区别 我想在我的手机上测试admob广告系统 NOT在 PC 上的模拟器上 AdRequest ad new AdRequest Builder addTes
  • 如何更改进度条的颜色

    我想改变颜色最后更新文本 默认情况下它是黑色的 有没有办法引入一些代码来改变我为栏文本所做的文本颜色 帮我介绍一下缺少的代码 div span 2 span div div div Last updated 7 01 2013 progre
  • 从另一个 php 文件调用未定义的函数

    好吧 这就是我的代码的样子 索引 php require once WebsiteRoot include testfile php TestFunction include testfile php function TestFuncti
  • QLPreviewController 视图

    我只是想访问 QLPreviewController view 事实上 我想捕获其视图上的点击事件以显示 隐藏工具栏等 我正在尝试 QLPreviewController qlpc QLPreviewController new qlpc
  • 如何进行通用订单[重复]

    这个问题在这里已经有答案了 我有一个数据库作为数据框 我想对所有列进行排序 但保持元素之间的关系 例如 如果我执行以下操作 gt DF A B C D 1 11 2 432 4 2 11 3 432 4 3 13 4 241 5 4 42
  • 使用 mongoose model.find() 获取仅 1 个字段的所有条目

    我尝试使用 model find 的不同变体 但没有一个能达到我想要的效果 下面的代码是我正在使用的代码 但它显示每个字段 而我只想要 iframe 字段 app get api videos function req res Video
  • 如何将选择值存储到 php 变量中

    我有一个简单的下拉选择菜单 div div
  • 将匹配多个批量输入的 LINQ 表达式 [重复]

    这个问题在这里已经有答案了 如何编写匹配多个批量输入的 LINQ 表达式 这是我的数据库表 Members Division Department 1 3 4 9 5 1 6 3 9 2 我想选择标有 的成员 这是我的输入 int divi
  • JPA + Spring 异常后回滚事务

    我正在使用 Spring 和 JPA 下面带有 HIbernate 当抛出 PersistenceException 时 我想捕获它并返回错误消息 以便它不会传播给调用者 Transactional public String save O
  • 空引用 - 任务ContinueWith()

    对于以下代码段 NET v4 0 30319 我在第二个延续中收到如下所示的空引用异常 最有趣的是 这个问题只发生在 8GB RAM 的机器上 但其他用户有 16GB 或更多内存 他们没有报告任何问题 这是一个非常间歇性的问题 这让我怀疑垃
  • 对 URL 进行编码/解码

    在 Go 中编码和解码整个 URL 的推荐方法是什么 我知道这些方法url QueryEscape and url QueryUnescape 但它们似乎并不正是我正在寻找的 具体来说 我正在寻找像 JavaScript 这样的方法enco
  • 如何在 Scala 3 中证明 `Tuple.Map[H *: T, F] =:= (F[H] *: Tuple.Map[T, F])`

    我正在尝试编写一个包含元组类型给定实例的特征 是的 我知道summonAll存在 trait TupleInstances C T lt Tuple val instances Tuple Map T C given C TupleInst
  • 无法在 codeigniter 3 中使用 SMTP gmail 配置发送电子邮件

    下面是我的代码 我参考了堆栈溢出和 codeigniter 用户指南中的所有示例 我仍然无法解决这个问题 public function send config protocol smtp config smtp crypto ssl co
  • Access/Excel VBA - 时间延迟

    Note 刷新 Excel 中链接到 Access 数据库的表 Excel 中的表需要按顺序刷新 例如 Test Sheet1 Test Sheet2 Test Sheet3 Excel 文件由多个用户访问 问题 在 Access vba