2013-10-20 179 views
0

我不知道这段代码有什么问题。它在Rng.select中显示错误。当我在单独的工作表上测试它的工作。任何帮助?执行Range.Select时出错

Sub copyex() 
Dim Lastro As Integer 
Dim oSht As Worksheet 
Dim Rng As Range 

'make exact copy at S6 for comparasion 
Set oSht = Workbooks("Main.xlsm").Sheets("Work") 
Lastro = oSht.Cells(Rows.Count, 2).End(xlUp).Row 

With oSht 
Set Rng = oSht.Range("B6:G" & Lastro) 
     Rng.Select 
     Selection.Copy 
     Range("S6").Select 
     ActiveSheet.Paste 
End With 
+0

我已经提到它,但它重复:[请接受一些答案](http://meta.stackoverflow.com/help/someone-answers)。 –

回答

2

您必须在选择范围之前选择工作表。

编辑#1

在你的榜样,你可能不必选择范围....尝试替换两行:与单线

Rng.Select 
Selection.Copy 

Rng.Copy 
+0

雅..这就是为什么我将我的工作表设置为工作簿(“Main.xlsm”)。表(“工作”)。不是吗? –

+0

您正确设置范围,但您必须为您选择或激活工作表可以选择或激活范围...........我将更新我的答复。 –

+0

谢谢。我知道了 。 –