Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 9233|回复: 7

[已解决]请问老师,为什么这个Worksheet_Change事件不能调试也不能运行??谢谢

[复制链接]
发表于 2011-4-17 18:42 | 显示全部楼层 |阅读模式
请问老师,为什么这个Worksheet_Change(在sheet2中)事件不能调试也不能运行??谢谢
最佳答案
2011-4-17 19:02
单元格事件是不能直接用 F8 测试的
不过可以通过在代码中加个>>无用的变量>>来让其发生错误,>>然后点调试>>再删除这个变量,就可以用F8调试了

比如说兰版的代码中加个 "X"  喜欢加什么随便你
Private Sub Worksheet_Change(ByVal Target As Range)
X
cc = Application.WorksheetFunction.Match("一", Range("a1", "e1"), 0)
Worksheets("2").Range("A1") = cc
End Sub

只要是加在SUb和 End Sub 中间的任意行就可以用此方法测试

当然,你还得激发这个事件才能调试这个代码!

求助.rar

4.87 KB, 下载次数: 32

发表于 2011-4-17 18:55 | 显示全部楼层
Private Sub Worksheet_Change(ByVal Target As Range)
cc = Application.WorksheetFunction.Match("一", Range("a1", "e1"), 0)
Worksheets("2").Range("A1") = cc
End Sub
回复

使用道具 举报

发表于 2011-4-17 19:02 | 显示全部楼层    本楼为最佳答案   
单元格事件是不能直接用 F8 测试的
不过可以通过在代码中加个>>无用的变量>>来让其发生错误,>>然后点调试>>再删除这个变量,就可以用F8调试了

比如说兰版的代码中加个 "X"  喜欢加什么随便你
Private Sub Worksheet_Change(ByVal Target As Range)
X
cc = Application.WorksheetFunction.Match("一", Range("a1", "e1"), 0)
Worksheets("2").Range("A1") = cc
End Sub

只要是加在SUb和 End Sub 中间的任意行就可以用此方法测试

当然,你还得激发这个事件才能调试这个代码!
回复

使用道具 举报

发表于 2011-4-17 19:05 | 显示全部楼层
回复 雨雪霏 的帖子

另外,你的代码是写在sheet1的单元格事件里面的,你在sheet2里操作当然不会触发事件啦


回复

使用道具 举报

 楼主| 发表于 2011-4-17 21:40 | 显示全部楼层
本帖最后由 雨雪霏 于 2011-4-17 21:41 编辑

回复 兰色幻想 的帖子

谢谢兰色老师!受到老师的启发,我又编写了一下,查找黄色区域对应字母的数字,我认为自己的代码过长了,像那些worksheets("sheet2").range("a1:E1")等不能换成range("a1:E1"),(尽管我用了activate方法),请老师讲一下可以吗??谢谢老师

求助.rar

6.51 KB, 下载次数: 103

回复

使用道具 举报

 楼主| 发表于 2011-4-17 21:52 | 显示全部楼层
本帖最后由 雨雪霏 于 2011-4-17 21:56 编辑

回复 无聊的疯子 的帖子

这位老师,请问一下,什么时候要在range 对象前加上worksheets("").?谢谢
回复

使用道具 举报

发表于 2011-4-18 07:46 | 显示全部楼层
事件触发是你在相应的工作表中,从用户界面进行特定的操作,然后触发相应的事件
要调试事件可以先在事件代码上设置断点,然后在界面操作触发事件进行调试
回复

使用道具 举报

发表于 2015-7-13 23:03 | 显示全部楼层
先记下 以后看
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-13 07:54 , Processed in 0.259395 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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