excl禁止关闭工作表.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
批量制作禁用宏就关闭的文件 取材于老刀 平常我们在打开带有宏的文件时,如果宏的安全性选择了中级时,我们选择启用宏或禁用宏,但在有些时候我们并不希望禁用宏,这时怎么做呢? 我们知道,Excel的宏表函数是不能禁用了,所以下面我们就利用这个特性来设定。 首选插入一个名为“Macro”的宏表,在A2:A8中分别键入下面几行内容: =ERROR(FALSE) =RUN(RunMacro) =IF(ISERROR($A$3)) =GOTO($A$11) =END.IF() =ERROR(TRUE) =RETURN() 在A11:A13中分别键入以下几行内容: =ALERT(对不起!由于禁用了宏,本文件禁止打开!,3) =FILE.CLOSE(FALSE) =RETURN() 下一步是在每一个工作表中插入一个名为“工作表名称!Auto_Activate”,引用位置为“=Macro!$A$2”的名称,如当前工作表名称为“Sheet1”,则插入名称为“Sheet1!Auto_Activate”。 保存之后就可以实现我们的功能了。下面是做好的一个文件: 根据上面的知识试着做一个加载宏,主要方便多个工作表时,设定名称。 加载后在工具菜单中生成相应的菜单项。如果你是ExcelXP,在工具/宏/安全性里的可靠来源中,“信任对于Visual Basic 项目的访问”选项要选取。 加载宏后在工具菜单中有新菜单 [EXCEL]禁用宏则退出 时间:2009-04-09 17:20来源:铿亮工作室 作者:SiliconXu 点击: 199次 这篇文章说明如何利用宏表,制作一个工作簿。在用户打开工作簿时,Excel会提示用户是否允许运行宏,如果用户点击禁止的话,则Excel会提示由于禁止了宏的运行,本文件将要关闭,并    这篇文章说明如何利用宏表,制作一个工作簿。在用户打开工作簿时,Excel会提示用户是否允许运行宏,如果用户点击“禁止”的话,则Excel会提示“由于禁止了宏的运行,本文件将要关闭”,并关闭工作簿,以此达到强制要求用户打开工作簿时必须允许宏运行的目的。当然,这只是对于普通用户而言,高级用户还是可以通过其它途径达到打开工作簿而不运行宏的目的。本文仅供参考。(本文内容参考自ExcelHome这个贴子:/dispbbs.asp?boardid=2replyid=338619id=69320page=1skin=0Star=1 ) ? 开始正式操作之前,需要注意以下的问题: a. 插入定义名称时,必须插入工作表名称,而不是工作簿名称。也就是说,要在名称的前面加上“表名”跟感叹号“!”。比如“Macro1!Auto_Activate”。插入名称也可以利用宏来实现,这对于工作表比较多的工作簿来说更方便。(请参考文章后面的内容) b. 如果不是使用宏来进行插入定义名称或者在编写宏表之前、之后都没有运行过宏的话,宏表将达不到关闭文件的目的(就本例而言)。也就是说,编写宏表之前如果没有VBA(宏)的存在,那么,编写完宏表后,需要随便运行或者编写一次VBA(宏)。最简单的方法就是:编写完宏表后,利用“录制宏”的功能,随便录制一段宏,然后把该宏删除,保存文件。 ? 操作步骤: 1. 打开一个空白的工作簿。 2. 右击任何一张工作表的标签,选择“插入”,并插入“MS Excel 4.0 宏”。或直接按“Ctrl+F11” 3. 复制附件中“Macro1”工作表的内容到刚插入的宏表中。 4. 在宏表中插入定义名称Auto_Activate。直接复制附件中的引用“=Macro1!$A$2”。注意,名称前面要加上宏表的名字。 5. 分别在其他的工作表中插入定义名称Auto_Activate。引用的内容跟宏表一样。注意,名称前面要加上该工作表的名字。 6. 保存工作簿。 ? 利用VBA进行操作(可选): A. 使用VBA定义名称。在VBE中插入一个新模块,并编写一下代码: Public Sub AddName() ‘在工作表中插入”Macro1! auto_activate名称 Dim sh For Each Sh In ActiveWorkbook.Sheets If Not ChkName(Sh.Name) Then ActiveWorkbook.Names.Add Name:=Sh.Name “!Auto_Activate”, RefersToR1C1:= _ “=Macro1!R2C1″ End If ????? Next End Sub ? Function ChkName(ByVal Sh As String) As Boolean Dim Ck As Boolean,nm For Each nm In ActiveWorkbook.Names If InS

文档评论(0)

ea238982 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档