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

可以正常运行下面行
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未指明所属对象

谢谢回答的人,这个问题与单元格内容是啥无关

第1个回答  2015-09-01
那就是说你的代码没有放在当前表里面吧
理解错了,如果放在当前表(Site Data)里面是没有问题的,你试试
第2个回答  2015-09-01
with Sheets("Site Data")
Set panel_range = .Range(.Cells(4, 6), .Cells(8, 6))
end with本回答被提问者和网友采纳
相似回答