首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Excel VBA命令Workbook_open不起作用

是指在Excel中使用VBA编程时,Workbook_open事件无法正常触发执行相应的命令。

Workbook_open是Workbook对象的一个事件,它在打开工作簿时自动触发。通常情况下,我们可以在Workbook_open事件中编写一些初始化操作或者自动执行的命令。

如果Workbook_open命令不起作用,可能有以下几个原因:

  1. 代码位置错误:首先要确保代码位于正确的位置。在VBA编辑器中,双击工作簿对象,然后选择Workbook选项卡,确保代码位于Workbook_open事件中。
  2. 宏安全性设置:Excel的安全性设置可能会阻止宏的执行。在Excel中,点击“文件”->“选项”->“信任中心”->“信任中心设置”->“宏设置”,确保“启用所有宏”选项被选中。
  3. 工作簿保护:如果工作簿被保护,Workbook_open事件中的代码可能无法执行。在VBA编辑器中,选择工作簿对象,然后点击“工具”->“保护工作簿”,确保没有设置密码保护工作簿。
  4. VBA代码错误:检查代码中是否存在语法错误或逻辑错误。可以使用调试工具来逐行执行代码并查看是否有错误提示。

如果以上方法都无法解决问题,可以尝试以下操作:

  1. 重新创建Workbook_open事件:在VBA编辑器中,删除原有的Workbook_open事件代码,然后重新创建一个新的Workbook_open事件,并将原有的代码复制到新的事件中。
  2. 重启Excel:有时候Excel可能会出现一些临时的问题,重启Excel可以尝试解决这些问题。
  3. 更新Excel版本:如果使用的是较旧的Excel版本,尝试升级到最新版本,可能会修复一些已知的问题。

腾讯云相关产品和产品介绍链接地址:

腾讯云提供了一系列云计算相关的产品和服务,包括云服务器、云数据库、云存储等。具体可以参考腾讯云官方网站的相关页面:

  1. 云服务器(CVM):提供弹性计算能力,支持多种操作系统和应用场景。了解更多信息,请访问:https://cloud.tencent.com/product/cvm
  2. 云数据库(CDB):提供高性能、可扩展的数据库服务,支持MySQL、SQL Server、MongoDB等多种数据库引擎。了解更多信息,请访问:https://cloud.tencent.com/product/cdb
  3. 云存储(COS):提供安全可靠的对象存储服务,适用于图片、音视频、文档等各种类型的数据存储和管理。了解更多信息,请访问:https://cloud.tencent.com/product/cos

请注意,以上链接仅为示例,具体的产品和服务选择应根据实际需求进行评估和选择。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

VBA专题10-6:使用VBA操控Excel界面之执行命令以及激活功能区选项卡的两种方法

idMso可以是命令的名字,内置选项卡的名字,或者其它内置元素的名字。可以在网上搜索下载关于Excel内置控件名字的文档。 激活功能区选项卡的两种方法 下面介绍激活特定功能区选项卡的两种不同方法。...SendKeys方法 例如,下面的VBA代码模拟按下ALT、A和ALT键: Application.SendKeys "%A%" 将上面的语句放在Workbook_Open事件中,在打开该工作簿时,将激活...“数据”选项卡: Private Sub Workbook_Open() Application.SendKeys "%A%" End Sub 注意,在Excel的有些版本中,在Excel窗口被装载之前...XML和VBA代码(Excel 2010及以后的版本) 激活功能区选项卡的另一种方法是使用XML和VBA代码。执行下列步骤: 1. 下载CustomUI Editor并安装。 2....说明:本专题系列大部分内容学习整理自《Dissectand Learn Excel VBA in 24 Hours:Changingworkbook appearance》,仅供学习研究。

3.7K20
  • Excel VBA事件

    Excel里,能发生的事件很多: 打开、关闭工作簿 新建工作簿 新建工作表 激活工作表 选择单元格 单元格改写 ………… 这些都是事件,其实就是平时手动操作Excel的一些动作。...在Excel VBA里提供了接口,在发生这些事件之前或者之后,让使用者可以设置一段运行的程序。 比如双击打开工作簿,可以设置运行一段程序: ?...上面就是一个工作簿打开事件,运行一段程序: Private Sub Workbook_Open() MsgBox "工作簿打开了" End Sub 这种格式是固定的,必须按照这种模式,Excel...VBA才能识别它为一个事件,所以为了避免使用者手动输入而造成的错误,Excel VBA提供了下拉选项让使用者直接选择。...这几个模块也可以像普通的模块一样编写代码,但是一般都是存放一些事件代码,像上面的Workbook_Open,是必须放在ThisWorkbook模块里面才会有效果的。

    1.4K30

    VBA实战技巧32:安装Excel加载宏

    图4 每个键都包含要打开的加载项的名称(有时还包含一些命令行参数)。如果加载项不在加载项文件夹中,则包含完整路径。 注意,这些注册表项在关闭Excel后更新。...如何使用VBA来安装Excel加载宏 编写一些简单的代码来启用加载项,弹出的消息框如下图5所示。...因为当没有活动工作簿时你无法打开加载项对话框,显然这也会阻止Excel通过VBA将新加载项添加到列表中。...代码在ThisWorkbook 模块中: Private Sub Workbook_Open() CheckInstall End Sub 如果直接从Workbook_Open事件调用过程,某些Excel...使用OnTime方法使Excel有时间在启动安装过程之前执行其所有启动的一些工作: Private Sub Workbook_Open() Application.OnTimeNow, "'"

    4.7K20

    Excel VBA编程

    但是在VBA中,数据类型跟Excel不完全相同。...中常用的对象 对象 对象说明 Application 代表Excel应用程序(如果在word中使用VBA,就代表word应用程序) Workbook 代表Excel工作簿,一个workbook对象代表一个工作簿文件...但是VBA中没有Excel的内置函数,使用worksheetfunction可以调用Excel中的内置函数。...想让excel在删除指定的单元格后,按自己的意愿处理其他单元格,我们需要编写VBA代码将自己的意图告诉excel。...可以在excel的【功能区】中找到它们 表单控件 控件名称 控件说明 按钮 用于执行宏命令 组合框 提供可选择的多个选项,用户可以选择其中一个项目 复选框 用于选择的控件,可以多项选择 数值调节按钮 通过单击控件的箭头来选择数值

    45.4K22

    Excel实战技巧78: 创建个人宏工作簿

    个人宏工作簿是一个文件,可以在应用程序开启时运行其中的VBA代码,就像是运行功能区选项卡中的命令一样。创建个人宏工作簿很简单,如下所示。...步骤1:打开一个Excel工作簿,单击功能区“开发工具”选项卡中的“录制宏”命令,在弹出的“录制宏”对话框中,选取“保存在”下拉列表框中的“个人宏工作簿”,如下图1所示。单击“确定”。 ?...此时,Excel将自动创建个人宏工作簿文件。按Alt+F11键,打开VBE编辑器,可以到工程资源管理器窗口中有一个名为“Personal.xlsb”的VBA工程。 ?...图2 步骤3:双击Personal.xlsb中的模块,在其中编写我们想要实现功能的VBA代码。 步骤4:保存文件。...).Activate On Error GoTo 0 End With End Sub 最后,双击打开ThisWorkbook模块,输入代码: '打开工作簿时运行 Private Sub Workbook_Open

    2.7K30

    过程(一)定义和分类

    一、过程的定义 过程是指由一组完成指定任务的VBA语句组成的代码集合。 实际上用Excel VBA开发应用程序就是在编写过程。...如上图所示,创建过程既有在模块中输入sub和程序名称,也有使用Excel事件时选择对象和事件来创建的。这就涉及过程的不同类型。...(具体参照Excel事件部分学习。) 2、属性过程 在”类模块“中设置类的属性时,可通过”属性过程“来完成,后续如果有机会介绍类模块时再做介绍。...通用过程都保存着在VBA的“模块”中,一个模块可以包含任意数量的过程,同时一个VBA工程也可以包含任意多个模块。(如下图可以创建过个模块,在一个模块中也可以添加多个过程。)...然后在thisworkbook模块中创建workbook_open事件过程,在过程中调用dingshi过程来实现功能的。

    1.7K30

    Excel VBA对象模型

    1、对象模型 上一讲说了Range对象,这一次我们从总体方面来说一下Excel VBA的对象模型。 你真正想了解Excel VBA里的对象的话,看官方文档是最好的,没有比官方文档更准确的了。...我们前面说过,Excel VBA的对象都是微软已经做好了,让我们来使用的,所以这些对象和我们平时普通操作Excel都是有联系的,每个对象你都可以想象是在手动操作Excel,手动操作说到底就是做好了一个图形界面让我们去操作...如果你看了官方文档,你应该已经发现Excel VBA里有好多对象,这些对象其实都是有层级关系的,就像一棵树一样,树顶上最高级的是Application,然后不停的分叉,衍生里众多的对象。...打开后的东西,也就是Excel VBA对象模型里的最高级的Application。...4、小结 Excel VBA对象模型,和自己平时操作联系到一起,你能操作什么,就能找到对应的VBA对象。 然后就是多去用才能熟悉。

    2.3K31

    Excel VBA解读(135): 影响工作表公式中运用自定义函数效率的Bug及解决方法

    学习Excel技术,关注微信公众号: excelperfect 在前面的两篇文章中,我们通过简单地修改VBA代码来使自定义函数运行得更快。...本文将聚焦于Excel中会影响到自定义函数的Bug,并探讨如何避免它们。...如果Excel处于手动计算模式,可以捕获触发计算的所有键击,并在VBA代码中启动计算。...Application.CalculateFull Ctrl/Alt/Shift/F9——Application.CalculateFullRebuild 在ThisWorkbook模块添加键击捕获过程: Private Sub Workbook_Open...小结:如果需要在Excel中使用大量引用了VBA自定义函数的公式,则需要使用“手动计算”模式,并在工作簿中添加计算键捕获和处理程序。

    2.3K20

    探索VBA代码编辑器——《Excel VBA宏编程》系列讲座2

    Excel已经为我们准备好了编写VBA代码的编辑器,让我们非常方便地编写、运行和调试、保存VBA代码。...VBA代码编辑器在哪儿 在你刚安装好Excel时,其界面通常如下图1所示,Excel默认没有显示“开发工具”选项卡。 图1 为了方便编写VBA代码,我们需要调出“开发工具”选项卡。...图3 看看VBA代码编辑器 单击Excel功能区“开发工具”选项卡“代码”组中的“VisualBasic”,或者直接使用Alt+F11组合键,都可以打开VBA代码编辑器。如下图4所示。...图7 这是一个工作簿事件Workbook_Open,当你打开该工作簿时会发生,你可以在其中输入你想在工作簿打开时执行的操作的代码。如果不添加任何代码,则该工作簿打开时不会执行任何操作。...图12 保存包含VBA代码的工作簿 在保存含有VBA代码的工作簿时,我们需要使用xlsm扩展名,如下图13所示,否则Excel会自动删除代码。

    3.4K20

    Excel: 使用Windows任务计划程序定时自动打开指定工作簿

    文章背景:上文(参见文末的参考资料[1])提到,通过Application.OnTime定时执行工作簿中的VBA代码,但是它并不是一个可靠的解决方案。...如果Excel文件关闭,则使用 Application.OnTime 安排的过程也会暂停。本文通过Windows任务计划程序,每天早上8点自动打开指定路径的工作簿,然后激活工作表test。...系统:win10 (1)打开工作簿,在工程窗口中,找到ThisWorkbook,添加如下代码: Private Sub Workbook_Open() Worksheets("test")....启动程序:浏览并选择Excel程序的路径,通常是C:\Program Files\Microsoft Office\root\Office16\EXCEL.EXE(根据实际安装路径可能有所不同,前后需要加双引号...参考资料: [1] VBA: 通过Application.OnTime定时执行程序 [2] 讯飞星火认知大模型 [3] 怎么在每天的某个时刻自动打开特定excel工作簿(https://www.officeapi.cn

    65810

    研究传播 Dridex 新变种的 Excel 文档

    Dridex 钓鱼邮件 带有 Excel 附件的 Dridex 钓鱼邮件如下所示: 钓鱼邮件伪装成向客户发送的进口关税数据,要求用户打开 Excel 附件(HF7.TRANS 2021.08.09.xlsb...宏代码解析 收件人打开 Excel 文档后会在顶部以红色粗体显示要求用户启用宏代码。Excel 则会显示黄色警告栏,通知用户当前已经禁用了宏,意味着启用内容可能存在风险。...Excel 文件内部不仅使用了自动运行的 VBA 代码(Workbook_Open),还使用了 Excel 4.0 宏代码。...Sub Workbook_Open()ActiveWorkbook.Sheets("Macro1").Range("A1").Value=Environ("allusersprofile")& "\KgmsgJbgP.sct"End...最后调用 mshta命令执行 KgmsgJbgP.sct文件,即 =EXEC(CONCATENATE("mshta ", CHAR(34), A1, CHAR(34)))。

    1.3K20
    领券