永发信息网

用vba在EXL表格编写的一段代码,请大神帮忙修改怎样可以运行成功。计算时运行时错误13,类型不匹配

答案:5  悬赏:80  手机版
解决时间 2021-01-25 15:46
Private Sub Worksheet_Change(ByVal Target As Range)If Range("A1:Z500") > 17 ThenMsgBox "提示:有大于18的单元格"End IfEnd Sub
最佳答案
这个代码错, Range("A1:Z500") > 17,这个区域和17一个数字没法比较。应该是这个区域中逐个单元格与17做比较。
Private Sub Worksheet_Change(ByVal Target As Range)
dim c
for each c in range("A1:Z500").cells
If c > 17 Then
MsgBox "提示:有大于18的单元格"
exit for
End If
next c
End Sub

但是,有必要每改一个单元格,都把500个单元格检查一次吗?也没错,只是……
全部回答
Private Sub Worksheet_Change(ByVal Target As Range) If Application.CountIf(Range("A1:Z500"), ">18") Then     MsgBox "提示:有大于18的单元格" End If End Sub
你好! Private Sub Worksheet_Change(ByVal Target As Range) If Application.CountIf(Range("A1:Z500"), ">18") Then     MsgBox "提示:有大于18的单元格" End If End Sub 仅代表个人观点,不喜勿喷,谢谢。
range是个区域,比较大小要统计的 If WorksheetFunction.CountIf(Range("A1:Z500"), ">17") Then MsgBox "提示:有大于18的单元格" End If
Private Sub Worksheet_Change(ByVal Target As Range) For Each Target In Range("A1:Z500")     If Target.Value > 17 Then        MsgBox "提示:有大于17的单元格"        Exit Sub     End If Next End Sub
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
风顺汽车维修中心(黄石阳新县)地址在什么地方
启晨乒乓球俱乐部地址在哪,我要去那里办事
为解决本社区内商贩扰民的问题,社会工作者小
高中生能报考大学英语四级考试吗
我的世界考古mod阿努怎么苏醒
1986年属虎农历11月16号晚上7点多是什么命
下列关于计算VaR值的历史模拟法的说法,正确
华盛汽车修理厂(黄石阳新县)地址在什么地方,
冠军乒乓球俱乐部地址有知道的么?有点事想过
联想a1010t恢复出厂设置pin码是多少
横扫千军手游什么阵容好 贫民阵容推荐
【我想发明的机器人】我想发明的机器人作文
有一首韩语歌曲 歌词是 我爱你 这世界上只有
有一首歌是日本女人唱的,好像关于樱花的,唱
北宋是不是取代后周政权建立起来的
推荐资讯
敦煌嘉年华精品酒店地址在哪,我要去那里办事
邢台市明天限号吗
网络适配器NVIDIA nForce Networking control
分化中的两栖类细胞核中,RNA的合成非常旺盛
如何DIY爱心折纸大全方法图解
葡萄软果是什么原因
设3的a次方等于4的b次方等于36,求a分之2加b分
万年青芝士炒饭的做法步骤图,怎么做好吃
【北京54坐标系】我国采用的北京54坐标系和西
新印象茶楼怎么去啊,我要去那办事
大家觉得冒险岛里最恶心最讨人嫌的怪是什么?
读“各类土地利用付租能力随距离递减示意图”
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?