excel vba 定义range,range(cells1,cells2)出错

可以正常运行下面行Setpanel_range=Sheets("SiteData").Range("F4:F8")不能正常运行下面行Setpanel_range=Shee... 可以正常运行下面行
Set panel_range = Sheets("Site Data").Range("F4:F8")
不能正常运行下面行
Set panel_range = Sheets("Site Data").Range(Cells(4, 6), Cells(8, 6))
理论上Range("F4:F8")应该是等价Range(Cells(4, 6), Cells(8, 6))
之所以要用range(cells1,cells2)是因为这个range里面所有的数字我都是用变量的,如果range带字母反而不好调用,所以用cells调用比较方便。
请大神帮忙解决,谢谢,折腾两天了还是搞不定
已自己找到答案如下

Set panel_range = Sheets("Site Data").Range("F4:F8")
Set panel_range = Sheets("Site Data").Range(Sheets("Site Data").Cells(4, 6), Sheets("Site Data").Cells(8, 6))
参考网址http://bbs.csdn.net/topics/340159222
原因

因为Range(cells(),cells())中的Cells未指明所属对象

谢谢回答的人,这个问题与单元格内容是啥无关
展开
 我来答
zzust
2015-09-01 · TA获得超过782个赞
知道小有建树答主
回答量:660
采纳率:73%
帮助的人:150万
展开全部
那就是说你的代码没有放在当前表里面吧
理解错了,如果放在当前表(Site Data)里面是没有问题的,你试试
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
庆年工坊
2015-09-01 · 知道合伙人互联网行家
庆年工坊
知道合伙人互联网行家
采纳数:4233 获赞数:8928

向TA提问 私信TA
展开全部
with Sheets("Site Data")
Set panel_range = .Range(.Cells(4, 6), .Cells(8, 6))
end with
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式