繁体   English   中英

如何自动运行Excel宏?

[英]How to run automatically Excel macros?

我在Excel中创建了板球表。 我还创建了一个宏,该宏用于在击球次数等于20(T-20比赛)时显示一条消息。 我的问题是,当超过20点时,除非按快捷键,否则不会显示任何消息。 有什么我能做的,以便每当超过20时自动显示一条消息。

我的代码是:

Sub Innings()

If Range("H43") = 20# Then

MsgBox "Innings Completed"

End If

End Sub

在工作表代码区域中包含以下宏:

Private Sub Worksheet_Calculate()
    Call Innings
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("H43")) Is Nothing Then
        Call Innings
    End If
End Sub

因为它们是工作表代码宏,所以它们非常易于安装和自动使用:

  1. 右键单击Excel窗口底部附近的选项卡名称
  2. 选择查看代码-这将打开一个VBE窗口
  3. 将内容粘贴并关闭VBE窗口

如果您有任何疑问,请先在试用工作表上尝试一下。

如果您保存工作簿,宏将与它一起保存。 如果您在2003年以后使用Excel版本,则必须将文件另存为.xlsm而不是.xlsx

删除宏:

  1. 如上调出VBE窗口
  2. 清除代码
  3. 关闭VBE窗口

要总体上了解有关宏的更多信息,请参见:

http://www.mvps.org/dmcritchie/excel/getstarted.htm

http://msdn.microsoft.com/zh-CN/library/ee814735(v=office.14).aspx

要了解有关事件宏(工作表代码)的更多信息,请参见:

http://www.mvps.org/dmcritchie/excel/event.htm

必须启用宏才能使其正常工作!

加里(Gary)的学生代码运行良好。 您只需要将Worksheet_Change和Worksheet_Calculate写入List1而不是Module1。 我添加图片。

图片

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM