VBA范围从string
这很愚蠢,但是我在这个简单的陈述中被卡住了一段时间:
Dim range1 as Range Dim mysheet as String Dim myrange as String mysheet = "Sheet1" range = "A1:A10" range1 = Worksheets(mysheet).Range(myrange)
我已经testing了在互联网上find的所有解决scheme,例如这个 , 这个和这个 ,但没有。
所有这一切给我错误:1004“应用程序定义错误”或“对象variables或未设置”。
我已经尝试了以下内容:
range1 = ThisWorkbook.Worksheets(mysheet).Range(myrange) range1 = ActiveWorkbook.Worksheets(mysheet).Range(myrange) range1 = Sheets(mysheet).Range(myrange) (and the combinations above) range1 = Worksheets(mysheet).Range(Cells(1,1), Cells(1,10)) (and the combinations with This/Active workbook)
和
with This/ActiveWorkbook range1 = .Worksheets(mysheet).Range(myrange) end with
没有工作。
这是一件非常愚蠢的事情,但是我现在被卡住了一段时间:s
谁能帮我?
提前真的很感谢。
最好的祝福,
您需要使用Set来分配对象:
Set range1 = Worksheets(mysheet).Range(myrange)