从论坛上猎取到老刀作品“取消宏则关闭工作簿(改进版)”,奉若神明,想用的时候搬过来就是,想抽时间读懂读懂它,总觉很难。今天有朋友提起这事,试着啃了一小块,拿出来与小菜们一起分享分享。 1、工作簿中必须有一个写入宏代码的“宏表”,它与普通工作表有所区别。插入宏表有两个办法: ①在自己的工作簿中按Ctrl+F11插入一个宏表。 ②用“移动或复制工作表”复制宏表到自己的工作簿:
2、为每一个工作表定义一个名称Auto_Activate,这个名称可是个好东东,每当激活工作表的时候,都会计算名称指定的单元格区域,本例中,即是当激活每个工作表的时候,自动运行宏表中的代码,检查是否运行了宏。 按Ctrl+F3打开“定义名称”对话框,注意,名称得用工作表级名称,即名称前面要加上工作表的名称(如下图所示),这点至关重要。引用位置统一为“=Macro1!$A$1”,因为我们把宏表代码写在Macro1中的A1单元格。 关闭窗口后,打开其它工作表,重复“定义名称”操作,在sheet1工作表中,定义名称sheet1!auto_activate,其余类同。 3、在Macro1!A1单元格,写入如下代码:
=ALERT("祝您家庭幸福万事如意!",2) 下一个单元格A2,写入下面代码,不然,会提示错误: =RETURN() 激活工作表,弹出下面对话框:
4、以上代码只是测试代码。实际用于“取消宏则关闭工作簿”,我们照搬老刀的代码就行,把它复制到你的宏表中。
[此贴子已经被作者于2006-9-7 11:11:03编辑过] |