【理解】如何定时运行程序

以下这个程序非常简单来自书本《Excel2010 VBA 入门与提高》第三章疑难58。这个case很容易让初学者觉得和递归有关,其实不然。具体见下。

程序运行效果就是,按start以后A2跳出当前时间,且开始一秒一秒地动。再按end A2就会停下来。


上代码前,需要先放一下Application.OnTime的prototype: Application.OnTime(EarliestTime, Procedure, LatestTime,Schedule)


Procedure对应的位置放入某个要启动的过程(程序)。

EarliestTime对应的位置是这个Procedure要启动的时间。

LatestTime是这个程序如果在EarliestTime没启动,那么Procedure最晚被启动的时间。过了这个时间,程序不会再被启动。

Schedule是逻辑值,为真就是创建某个程序的定时器,为假就是取消EarliestTime所创建的那个定时器。


代码如下,描述也放在了里面:

Dim dNextTime As Date

Sub StartTimer()
    dNextTime = DateAdd("s", 1, Now)  '设定了earlist time。
    Application.OnTime dNextTime, "StartTimer"   '初看很像递归,其实它要在下一秒才开呢!!!程序去到下一行代码完全不用一秒钟!!!
    
    Cells(2, 1).Value = Now
    
End Sub

Sub StopTimer()
    Application.OnTime dNextTime, Procedure:="StartTimer", Schedule:=False
End Sub



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
本资源由大量的实用批处理文件组成,删除.txt尾缀名双击即可直接使用,既是学习的模板也可以作为实用程序,如下为文件组成,涉及文件管理,系统,网络,小工具等等: 0-reaname 2000XP停止打印.bat BAT珍藏 dir.bat new_恶搞别人一下,在下次启动计算机时会自动关机。。。重起后恢复正常(“绿色版”).bat reaname.bat sxs.exe 的查杀.bat sz.reg转换成reg.bat.bat 倒记时(全屏).bat 全盘删除所有文件夹下的_desktop.ini.bat 删除大小和类型一样的文件.bat 删除所有分区的默认共享.bat 制作超大文件.bat 参考.bat 变量截取实例.bat 字符串提取&替换等操作 将cwindows.复制到当前目录并显示进度.bat 屏幕炸弹.bat 弹出对话框.bat 打开快捷方式指向的目录.bat 批处理加密.bat 批处理蠕虫.bat 批处理解密.bat 批处理读注册表的Run下面的值.bat 按扩展名分类.bat 数值计算 文件创建&改名等操作 显示c盘~z盘.bat 枚举当前目录及子目录大小.bat 枚举显示.bat 查找最新的文件.bat 格式转换 模拟黑客帝国数码雨.bat 每个目录占用的空间.bat 清除威金(logo_1,熊猫烧香)病毒最新变种工具.bat 篮球飞人火爆版.cmd 系统优化 系统信息查询&修改 系统类 结束进程.bat 综合性脚本 网络类 获取路径 解锁注册表.BATbat 超级硬盘杀手.bat 输出倒文.bat 锁注册表.BATbat 随机数.bat 颜色.bat 2000XP停止打印.bat ARP本机绑定.bat cdd.cmd CMD命令速查手册.cmd C盘防毒批处理.bat debug生成取色按钮程序.cmd dir.bat IE主页修改.bat jacksi.bat QQ精简.cmd sxs.exe 的查杀.bat sz.reg转换成reg.bat.bat WinPE 专用安装工具.cmd XP服务优化批处理.bat 不显示输入密码.cmd 与某人的QQ临时对话.cmd 中文显示ping结果.bat 交换两个变量的值而不使用临时变量.cmd 修改IP跟电脑名.bat 全盘删除所有文件夹下的_desktop.ini.bat 删除大小和类型一样的文件.bat 删除所有分区的默认共享.bat 判断光驱里有无光盘.bat 判断分区格式.bat 加密代码.cmd 变色+翻滚字符.cmd 变量的多级嵌套.cmd 右键添加打开MS-DOS.bat 娱乐进度条.cmd 对加密的代码进行解密处理.cmd 将cwindows.复制到当前目录并显示进度.bat 感情进度条.bat 打开快捷方式指向的目录.bat 批处理生成图片.cmd 批处理读注册表的Run下面的值.bat 批量文件CAB 打包工具.cmd 按扩展名分类.bat 搞笑开机.bat 改变我的文档路径到D盘.bat 改变窗口颜色并显示当前颜色代码.cmd 断开网络联结.bat 星光闪烁.cmd 显示c盘~z盘.bat 显示当面途径DIR.bat 显示用户名.bat 显示翻滚字符.cmd 显示自己的IP.bat 显示进度.cmd 最小化运行批处理.cmd 枚举当前目录及子目录大小.bat 枚举显示.bat 查找最新的文件.bat 查杀效果图.bat 查看物理内存.bat 查看用户是否存在.bat 查看电脑硬件信息.bat 查看网关的MAC地址.bat 查看进程使用的端口.bat 查看驱动器.bat 检查网络信息.bat 模拟2K开机进度条.cmd 每个目录占用的空间.bat 测试网络是否通畅.cmd 画圆角矩形框.cmd 百度关键字搜索.bat 禁止保留文档记录.bat 篮球飞人火爆版.cmd 绑定网关的批处理及预留维护提到.bat 结束进程.bat 给每个盘添加卷标.cmd 维护版.bat 网络PING包查询.bat 自动改回主页.bat 自定义配置网络ip、网关、dns.bat 解锁注册表.BATbat 计算机名DNS网关IP(用来学习。不见得有效。).bat 读心术P处理版.cmd 输出倒文.bat 输出金字塔.cmd 进入全屏幕界面.cmd 进度特效.cmd 锁注册表.BATbat 防ARP.bat 飞入+变色字.cmd 黑客帝国里数码雨.cmd 下一行数字和上一行显示在同一行.cmd 保留空行替换字符串.cmd 列举水产品最高&最低价记录.cmd 删除重复行.cmd 去掉字符串不同部位的空格.cmd 去掉字符串头所有的0.cmd 反序列出文本的每行内容.cmd 反序显示输入内容.cmd 多行文本拼接成一行.cmd 把指定文件中的指定位置的数字相加.cmd 把首行和尾行互换.cmd 拼接相临的奇偶行文本内容.cmd 提取两个文件内容的不同之处.cmd 文本内容互换.bat 显示只有指定个数字符的行.cmd 显示某两个字符及其之间的字符.cmd 显示随机的5个数.cmd 查找偶数行内容.cmd 查找行中第一个数字串.cmd 检测IP格式是否正确.cmd 每6行拼接为一行.cmd 理解字符截取功能.cmd 生成0-99之间的随机数列.cmd 用指定字符替换指定内容.cmd 用某行内容替换特定字符.cmd 统计重复次数并排序.cmd 计算字符串长度.cmd 读取带敏感字符的行.cmd 输出指定行的内容.cmd 过滤敏感字符.cmd 过滤相同行内容.cmd 还原从QQ上复制下来的内容.cmd 逐行逐字显示文本.cmd 两整数相除的批处理.cmd 九九乘法表.cmd 九宫格图案.cmd 勾股数算法.cmd 去掉数值中可能存在的负号.cmd 去最大最小值后求剩余数组平均值.cmd 对数字进行排序.cmd 把一个数拆分为几个数的和.cmd 无限制实数加减运算脚本.cmd 水仙花数算法.cmd 求一列数所有不同组合的和.cmd 求最大公约数和最小公倍数.cmd 用随机数做四则运算.cmd 百钱买百鸡的买法.cmd 计算2的N次方.cmd 计算开方.cmd 计算正浮点数的和.cmd 计算花费的时间.cmd YS从桌面复制文件到其他地方.bat 乱序重列某类文件.cmd 今天访问过的程序文件所在目录.cmd 以文件夹名为名建立文本文件.cmd 全盘删除每个文件夹下的指定文件.cmd 全盘搜索指定文件.cmd 全盘查找QQ.exe并执行.cmd 创建url格式的快捷方式.cmd 删除N天之前的文件.cmd 删除当前目录下及其子文件夹中所有的空文件夹.cmd 删除所有以数字命名的文件夹.cmd 删除指定文件夹之外的其他文件夹和文件.cmd 删除某些文件夹之外的目录.cmd 判断是文件还是文件夹.cmd 在所有文件夹下建立随机文件.cmd 对含有数字的文件进行改名操作.cmd 建立回收站.cmd 按软件分类建立文件夹.cmd 探测空文件夹.cmd 提取文件(夹)属性.cmd 改名复制文件.cmd 文件数目分类统计.cmd 替换系统主题.cmd 比较两个文件夹下文件名的异同.cmd 清空指定大小的文件夹.cmd 系统文件替换.cmd 老外写的系统文件替换.cmd 获取某路径下的所有文件名.cmd 限制条件批量建立文件夹.cmd reaname.bat 中文数字转换为阿拉伯数字.cmd 人民币大小写互转程序.cmd 人民币金额小写转大写.cmd 十进制转二进制.cmd 十进制转十六进制.cmd 字母大小写转换.cmd 把秒转换为天小时分秒的格式.cmd 阿拉伯与罗马数字互转程序.cmd 阿拉伯数字转为罗马数字.cmd C盘个人资料转移器 IE修复.cmd Windows安全优化小助手.cmd XP安全设置补丁批处理 XP自动优化批处理文件3 全盘禁止运行指定程序 关闭无用的服务 删除历史记录.bat 删除右键“新建”菜单项目.bat 删除默认共享.bat 多功能系统优化设置.cmd 快速清理垃圾文件安装修改版 系统补丁自动升级.cmd 系统补丁自动安装.cmd Desktop Favorites My Documents OE shell.bat SHELL Shell Temp 简介 svc2kxp深山红叶汉化版本.cmd 介绍 lmod OptimizeXp.bat list 全盘禁止运行指定程序.cmd 2003优化文件.bat 关闭无用的服务(XP).bat install.CMDcmd 快速清理垃圾文件.bat 注册右键 判断驱动器类型.cmd 定时关机.cmd 打开控制面板中的某项.cmd 打开系统属性.cmd 提取用户列表.cmd 收集系统信息.cmd 改IP;网关;CDKey;网络号.cmd 显示各分区剩余空间情况.cmd 显示所有分区的剩余空间(以MB为单位).cmd 显示本机用户帐号信息.cmd 显示磁盘分区数.cmd 查看开机自启动程序的完整路径.cmd 查看电脑硬件信息.bat 检测光驱中是否有盘.cmd 添加环境变量.cmd 解析ipconfig命令输出通用函数.cmd 调用系统气泡.cmd 通过inf重启电脑.cmd C盘转换为NTFS格式.cmd dos下重启.bat guest.bat win2000关机命令.bat WIN2003 IIS最小权限分配.bat winxp修改计算机名.bat xp下确定最后的盘符.bat 不显示扩展名.bat 不显示隐藏文件.bat 使用WMI别名获取CPU信息.bat 关闭IDE通道检测.bat 列举进程.bat 判断光驱是否可用.bat 判断光驱里有无光盘.bat 判断分区格式.bat 刷新策略.bat 取得硬盘数.bat 右键添加bat.bat 右键添加打开MS-DOS.bat 弹出光驱.bat 改变我的文档路径.bat 显示扩展名.bat 显示用户名.bat 显示隐藏文件.bat 更改电源管理方式.bat 更改盘符.bat 更改系统启动菜单的时间.bat 查看工作组.bat 查看物理内存.bat 查看用户是否存在.bat 查看电脑硬件信息.bat 查看驱动器.bat 禁止保留文档记录.bat 给每个盘添加卷标.cmd 被锁定帐户.bat 重命名administrator账号.bat IE 界面批处理通讯录.cmd Tel XP安全设置补丁批处理 公交线路查询 文件备份器 文件归类整理器 英汉互译器 身份证信息查询 bg Tel svc2kxp.cmd svc2kxp深山红叶汉化版本.cmd 介绍 公交线路 公交线路查询.bat 数据库获取地址 readme 文件备份器V2.3修改版2.cmd 文件归类整理器 V1.1(子目录版).bat 文件归类整理器 V1.1(指定路径带子目录版).bat 文件归类整理器(当前目录版).bat 英汉互译.bat 英汉互译 计算机与网络英汉对照词典 词库 词库格式举例 date 身份证信息查询.cmd 身份证号码格式 中文显示ping结果.bat 断开网络联结.bat 显示网络配置.bat 显示自己的IP.bat 查看网关的MAC地址.bat 查看进程使用的端口.bat 检查网络信息.bat 百度关键字搜索.bat 自动改回主页.bat 自定义配置网络ip、网关、dns.bat 98下获取当前路径.cmd 分离路径和文件名.cmd 抛弃路径尾部指定层次的字符串.cmd 按创建时间显示完整路径.cmd 获取当前目录名.cmd 获取指定层次的目录名.cmd 获取相对路径.cmd 获取路径中指定层深的字符串.cmd
一款定时/循环执行任务的绿色小软件,可以用来定时执行程序、DOS命令、从HTTP服务器下载程序运行、结束进程、 模拟按键、发送EMAIL、网络唤醒、消息提示、关机、重启、注销、锁定、待机等操作,都是本人曾经所需要的功能!   合理使用和搭配软件的各功能,可做更多事情!可供对系统较了解的人自由发挥。 提示: a. 显示主窗口热键Ctrl+F1(可在设置里自定义) b. OnTimer.exe /h 启动隐藏,但不隐藏托盘图标除非使用OnTimer.exe /h-all c. 如果想更改消息提示背景只要找张238x139(其他尺寸软件会缩放)的图片替换OnTimer.jpg d. 普通运行、参数运行、 执行DOS “备注”开头为“-h”则隐藏执行 e. 关机、重启、注销、锁定、待机 “内容”开头为数字则执行前倒计时(可选择取消) 1.普通运行:  可以打开程序,目录,网站,文件,和Windows运行一样,只是不能带参数 如: [内容]http://www.yryz.net [内容]d:\mp3\爱上你是个错.mp3(可实现音乐闹钟) 2.参数运行: 可以带参数运行程序 如: [内容]shutdown -s [内容]ping www.baidu.com 3.下载运行:你可以从网上下载文件并执行 如: [内容]http://www.yryz.net/soft/OnTimer.rar [内容]http://dl_dir.qq.com/qqfile/qq/QQ2009/qq2009sp6_installer.exe 4.结束进程: 以最高权限结束进程,可以结束系统进程(winlogon.exe)! 如: [内容]QQ.exe 5.执行DOS: 就是CMD啦(dir del ...) [内容]del c:\*.log /q /s 6.模拟按键: 用来发送按键(附录有相关按键说明) 如: [内容]^%z 相当于按了Ctrl+Alt+z ,QQ出来了吧!…… 7.发送邮件: 用来定时发送Email的,当然你要先设置好SMTP,也就是用来发信的账号,然后就可以添加任务了, [内容]邮件内容 [参数]收信地址 注意: 如果你只是想发送文字,就直接在[内容]中输入,如: 生日快乐! 如果是想发送文本文件,那就在[内容]中输入文件路径如:c:\boot.ini 程序执行此操作时,会先内容是否为存在的文件,否则就把内容当作文字发送! 8.网络唤醒:  用来远程开机,[内容]中输入MAC地址如:00-e0-4d-df-7e-8a 9.消息提示:  用来定时提醒的,在屏幕的右下角以动画形式显示. 10.关闭系统 11.重启系统 12.注销登陆 13.锁定系统 14.系统待机 例: ------------------------ 先: 执行DOS: ipconfig /all >c:\ip.txt 再: 发送邮件: c:\ip.txt 可用于获得ADSL的动态IP,知道的人应该了解用处! ---------------------------------- 20110330 v1.3d - 修复在Windows 7下按“Alt”键按钮消失的BUG - 修复权限问题导致“随系统启动”无效 20101205 v1.3c + 关机等任务支持倒计时,以便取消执行 * 优化列表显示效果 20101128 v1.3b + 普通运行、参数运行、 执行DOS 支持隐藏执行 + 双击任务即可编辑 - 修复“移动”->“尾部”报错 - 修复分类切换时,任务状态显示不正确 * 调整执行次数显示 20101125 v1.3a + 支持任务分类管理(可拖动) + 支持“每月”任务 + 支持任务排序(上下移动任务,可拖动) + 支持任务执行次数存储 + 支持“内容”、“参数/备注”搜索 + 支持临时暂停所有任务 * 一些细节改进和BUG修复 ! 因数据库结构有变动,要使用原来的数据库(OnTimer.db),可执行 OnTimer.exe /update,当然出现异常时软件也会提示你修复. 20101020 v1.2h - 修复软件中文目录支持问题(数据库读取异常) - 修复托盘图标重建问题 + 添加任务状态托盘提示(活动任务/总任务) * 调整显示字体和列表排序 20101018 v1.2g + 加入“系统待机”功能 + 设置中加入“随系统启动”选项 + 任务列表支持点击“表头”进行排序 + 支持给任务添加备注 * 优化一些小细节 - 修复Win7下添加任务时提示“时间格式有误”的BUG 20100903 v1.2f * 优化消息提示框,使其提示消息时不影响你的工作 * 调整了任务类型的顺序,可能会导致旧版任务类型不正常,更新时请注意 * 调整任务列表顺序,把新添加的任务放到最前面 20100623 v1.2e * 改进列表选择框 * 窗口焦点设置(热键唤醒时) - 去掉提示消息窗口自动关闭 + 可自定义热键 ! 因数据库结构有变动,使用 OnTime.exe /12d-12e 启动就可把旧版的数据库转换成v1.2e版 20100511 v1.2d % 解决多任务时列表闪烁问题。 % 修复计时部分一些Bug!(星期) 20100510 v1.2c + 加入按星期执行!并优化计时部分。 20100510 v1.2b * 重写,效果更好,并作大量优化!  + 使用加密SQLite存储数据。 2008 v1.2  边学边做自己用。 按键附录: Shift + Ctrl ^ Alt % Enter ~ 以下按键要用{}括起来: BKSP, BS, BACKSPACE BREAK CAPSLOCK CLEAR DEL DELETE DOWN END ENTER ESC ESCAPE F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 F16 HELP HOME INS LEFT NUMLOCK PGDN PGUP PRTSC RIGHT SCROLLLOCK TAB UP WIN ( ) ~ % ^ + 可参考下例重复发送某按键: {DEL 4} ;连续4次按下 DEL 键 {S 30} ;发送30个字符“S” +{TAB 4} ;连续4次按下 SHIFT+TAB -------------------------------------------------------- SendMail.log是的日志代码,可参考下表 邮件服务返回代码含义 500 格式错误,命令不可识别(此错误也包括命令行过长) 501 参数格式错误 502 命令不可实现 503 错误的命令序列 504 命令参数不可实现 211 系统状态或系统帮助响应 214 帮助信息 220 服务就绪 221 服务关闭传输信道 421 服务未就绪,关闭传输信道(当必须关闭时,此应答可以作为对任何命令的响应) 250 要求的邮件操作完成 251 用户非本地,将转发向 450 要求的邮件操作未完成,邮箱不可用(例如,邮箱忙) 550 要求的邮件操作未完成,邮箱不可用(例如,邮箱未找到,或不可访问) 451 放弃要求的操作;处理过程中出错 551 用户非本地,请尝试 452 系统存储不足,要求的操作未执行 552 过量的存储分配,要求的操作未执行 553 邮箱名不可用,要求的操作未执行(例如邮箱格式错误) 354 开始邮件输入,以.结束 554 操作失败 535 用户验证失败 235 用户验证成功 334 等待用户输入验证信息

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

取啥都被占用

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值