Excel精英培训网

 找回密码
 注册
查看: 3060|回复: 2

[学习心得] 兰版 书中有错误?

[复制链接]
发表于 2006-12-23 19:51 | 显示全部楼层 |阅读模式
<p>一、</p><p>Dim mm</p><p>rivate Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)<br/>MsgBox "本文档不能修改"<br/>Application.EnableEvents = False<br/>Target.Value = mm<br/>Application.EnableEvents = True<br/>End Sub<br/><font color="#ff0000">rivate Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)<br/>mm = ActiveCell.Value</font></p><p>End Sub</p><p>这是书中的一个例子,防止单元格内容被修改。请注意红色部分,即只有当单元格的选择发生变化以后才能激活“MM=activecell.value"运行,也就是只有当单元格选择发生变化以后"MM"才有值赋予它,如果我打开工作表,直接修改当前单元格内容,那MM就是“”,当前单元格就无法恢复了,您说是吗。</p><p>二、</p><p>rivate Sub Worksheet_Activate()<br/>If Sheets(1).Name Like "sheet1" Then<br/>Sheets(1).Select<br/>Else<br/>Sheets(2).Select<br/>End If<br/>End Sub</p><p>这是书中98页的例子,要求打开工作簿时,sheet1工作表不允许查看。可这个代码放进去没有效果,我想是不是弄错了,您的本意应该是这样的吧:</p><p>rivate Sub Worksheet_Activate()<br/>If Sheets(1).Name Like "sheet1" Then<br/>Sheets(2).Select<br/>Else<br/>Sheets(1).Select<br/>End If<br/>End Sub</p><p>&nbsp;</p><p>请兰版指教</p>
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2006-12-23 20:49 | 显示全部楼层

<p>你买的是第一版的书吧,第二版的书中第2个问题已修正,第一个问题给你说一个简单的方法,在第一个语句后加一个APPLICATION.UNDO即可以了,此处使用SELECTCHANGE语句,只是让大家熟悉一下这个事件程序,并非是最好的解决方法.</p>
回复

使用道具 举报

 楼主| 发表于 2006-12-23 21:49 | 显示全部楼层

<p>哦,我也不知道我买的是几版,反正找到了便如获珍宝地拿回来了 嘿嘿</p><p></p>
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-9 05:07 , Processed in 0.282833 second(s), 7 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表