您的位置: 首页 > EXCEL技巧 > Excel基础 >

打开工作簿时自动运行指定的宏

时间:2013-12-10 整理:docExcel.net
如果需要在打开Excel工作簿时自动运行某个宏,可以用下面的两个方法:

一、Workbook.Open 事件

1.在Excel中按快捷键Alt+F11,打开VBA编辑器。

2.在“工程”窗口中双击“ThisWorkBook”,在右侧的代码窗口顶部左侧的“对象”框中,选择“WorkBook”。这时,Excel自动在代码窗口中输入下面的代码:

Private Sub Workbook_Open()

End Sub

然后在其中输入需要执行的宏代码,如下例:

Private Sub Workbook_Open()
   MsgBox ("Workbook_Open事件" & Chr(10) & ThisWorkbook.Name & "工作簿已打开!")
End Sub

3.保存工作簿并重新打开该工作簿。如上例中将弹出一个消息框。

二、用Auto_Open宏

1.在Excel中按快捷键Alt+F11,打开VBA编辑器。

2.单击菜单“插入→模块”,在右侧的代码窗口中输入名称为“Auto_Open”的宏,如下面的代码:

Sub Auto_Open()
  MsgBox ("Auto_Open" & Chr(13) & "已打开" & ThisWorkbook.Name & "工作簿!")
End Sub

3.保存工作簿并重新打开该工作簿。如上例中将弹出一个消息框。

上述两种方法可以同时存在,但在打开工作簿时按照先“Workbook_Open“后“Auto_Open”的顺序执行。

怎样在打开Excel工作簿时禁止AutoOpen宏的运行 问题:怎样在打开Excel工作簿时禁止AutoOpen宏的运行
回答:...en 事件或模块中含有Auto_Open宏时,打开该工作簿就会运行指定的宏代码。但有时我们希望这些包含在Workbook.Open 事件或Auto_Open宏中的代码在打开工作簿时不自动运行,例如在该代码中还在调试过程中,或其中包含错误时。要实现...
单击单元格时运行一个指定的宏 问题:单击单元格时运行一个指定的宏
回答:...以用一个常规的方法来实现当单击某个单元格时运行一个指定的宏。方法如下: 1.选择一个单元格,按住Shift键的同时,单击菜单“编辑→复制图片”,在弹出的“复制图片”对话框中,“外观”选择“如屏幕所示”,“格式”...
Word2003指定复杂字体的特征 问题:Word2003指定复杂字体的特征
回答:1、选择需要更改其外观的文字。 2、在“格式”菜单上,单击“字体”,再单击“字体”选项卡。 3、在应用于选定文字的语言类型的一系列控件中选择字体的特征。 注释  所有局部(局部:共享相同属性...
用VBA批量创建指定名称的文件夹 问题:用VBA批量创建指定名称的文件夹
回答:有时在工作中需要批量创建指定名称的文件夹,如果数量较多,例如要创建几十、甚至几百个文件夹,用手动的方法很难完成。批量创建文件夹的工具有很多,如果一时手头没有这类工具,可以在Excel中用VBA来完成,方法如下: ...
Word2003将宏指定到工具栏按钮、菜单和快捷键 问题:Word2003将宏指定到工具栏按钮、菜单和快捷键
回答:如果要方便快捷地运行宏,可以将其指定到工具栏 (工具栏:包含可用于执行命令的按钮和选项的栏。要显示工具栏,请按 Alt 然后按 Shift+F10。)、菜单 (菜单:单击菜单栏或其他工具栏上的菜单名时出现的命令的列表。)或...
用VBA判断指定的工作簿是否打开 问题:用VBA判断指定的工作簿是否打开
回答:如果要判断一个指定的工作簿是否打开,可以将下面的VBA代码放入标准模块中,然后在子过程中进行调用。 Function IsWkbOpened(sWkbName As String) As Boolean 如果目标工作簿已打开则返回TRUE,否则返回FALSE Dim i As Long For i = Workbooks.Count To ...
相关知识:

下面内容对您也许有用

      话题:vba 怎样在打开簿时自动运行一个已经建立的宏
      答:先打开这个 按ALT+F11进入VBA窗口在左边的列表里找到thisworkbook 在这个名字上点右键选查看码 粘贴下面的码 保存 下次打开这个时你写在 EXCEL VBA如何实现“在打开的 Excel用vba按先后顺序打开一个
      话题:怎样让excel簿打开时自动启用宏?或者必须启动宏才能显示
      问:请提供码及作步骤说明!
      答:我误解你的意思了?是这个吗 我说“启用”,就得启用,管你什么级 : club.excelhome./view.php?tid=283306 Private Sub Workbook_Open() excel中的宏删除后,为什么再建宏 让EXCEL在打开时,
      话题:打开EXCEL时不能自动打开个人宏簿,无法录制宏,如何解决
      问:在excel中录制,选择保存在个人簿中时会提示:为便于,启动夹中的
      答:查看你的设置,。不能自动打开,还是不能打开?ALT+F8,或者ALT+F11下查看。实在不行,重装office,office遇到莫名其妙的问题,折腾几天解决不了,就 打开EXCEL时不能自动打开个人 excel中删掉录制后为什么不能
      话题:excel 表里多个sheet如何自动运行各自的宏
      问:我的宏在sheet2标题为(各自2)中,我想在标题为(各自2)的单元格L5里执行指定的
      答:你的思路可以是这样,在this workbook中加入open宏,(此为打开运行的宏)码中ActiveSheet,改为指定的sheet Private Sub Workbook_Open()Sheet1.Range excel 求使多个自动运行的 打开Excel时自动运行宏
      话题:excel 求使多个表自动运行的宏
      问:每个表中有若干个SHEET,要求的宏能使同一夹内的[A表(sheetA.sheetB.
      答:关于批量打开表,批量触发表中的宏可用下面这段码:Private Sub mandButton2_Click()Dim H,ii As Integer If a=0 Then MsgBox"找不到!提示 excel 如何利用合并多个表 excel 表里多个sheet如何
      话题:如何在不同簿里运行宏?知道
      问:我有一百表格(不同簿里面的,就是一个夹里有100表格),要把
      答:没看懂你的意思。你是想在不同的簿中调用同一段vba程序吗?你可以试试将保存在个人宏簿中。对补充问题的回复:既然你知道录制,可以将修改的码添加 簿中有,将其设为共享运行宏表与不同的域谁
      话题:Excel中VB编程中有关宏的自动运行问题
      问:怎样在一打开簿自动运行指定的宏呢 本人是半路出家的菜鸟,尽可能的把命令
      答:Option Explicit Private Sub Workbook_Open()End Sub Excel中VB编程中有关自动 EXCEL VB编程关于
      话题:打开EXCEL时不能自动打开个人宏簿,无法录制宏,如何解决?
      答:单击工具-选项--,在级里选择“低”。保存后,再打开簿 打开EXCEL时不能自动打开个人 excel中删掉录制后为什么不能
      话题:怎么让excel某簿打开时必须启用宏?知道
      答:在VBA器里,你把这个到“Thisbooks”里面保存即可!“Thisbooks”在最左边窗口里,你找到打开就可以进去!这样,以后你只要打开这个簿,就会 打开EXCEL启用然后里面簿 怎样让excel簿打开时自动
      话题:TCL/ 怎么样|买什么
      1、机子速度很快,这点很重要,上网,打开和确实很快,比我的本慢点有限;2、后面的主摄像头只能说是满足使用,想高像素的不要考虑了,或者像我一样随身带个照相机();