excel VBA, If Target = Worksheets("Sheet").Range("G2") Then 下标越界 ??
5个回答
展开全部
下标越界估计是 Worksheets("sheet")的错误了。既然Target 代表选定的单元格,就肯定是表格的 Worksheet_SelectionChange 事件,所以在单元格对象前不能加工作表对象。
判断对象时不能用等号判断,要用 IS 。要判断选定对象的语句用对象比较也不行,不知何故,但可用下面语句替代:(代码中7代表G列)
If Target.Column = 7 And Target.Count = 65536 Then
判断对象时不能用等号判断,要用 IS 。要判断选定对象的语句用对象比较也不行,不知何故,但可用下面语句替代:(代码中7代表G列)
If Target.Column = 7 And Target.Count = 65536 Then
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Worksheets("Sheet")要改成Worksheets("Sheet1"),确定某个表才可以。
If Target = Worksheets("Sheet1").COLUMNS("G")
If Target = Worksheets("Sheet1").COLUMNS("G")
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
if target.column=7 then
就你的代码下标越界而言,是你的表名不对,应该是没有“sheet”这个表
如果你是用的工作簿事件,就要加上判断表名,当前表不用
就你的代码下标越界而言,是你的表名不对,应该是没有“sheet”这个表
如果你是用的工作簿事件,就要加上判断表名,当前表不用
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这明显是在sheet过程里面的,不用指定表名吧?
直接 If Target.Columns = 7 Then 如果是第七列的单元格
直接 If Target.Columns = 7 Then 如果是第七列的单元格
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |