2013-03-27 39 views
1

我首先想要将所有行从工作表evaluateatierooster_NL复制到工作表evaluateatierooster_NLFR。然后我想将表中的所有行(第一行除外)从evaluateatierooster_FR附加到表单evaluate_rooster_NLFR。我在下面一行发现错误,该对象丢失?附加2工作表到第3工作表excel vba

LastRow = ActiveSheet.Cells.Find(What:="*", After:=evaluatierooster_NLFR.Range("A1"), _ 
           SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row 

'~~> Copy evaluatierooster_NL to evaluatierooster_NLFR 
Sheets("evaluatierooster_NL").Select 
Rows("1:" & Rows.Count).Copy 
Sheets("evaluatierooster_NLFR").Select 
Range("A1").Select 
ActiveSheet.Paste 

Sheets("evaluatierooster_FR").Select 
Rows("2:" & Rows.Count).Copy 
Sheets("evaluatierooster_NLFR").Select 

Dim LastRow As Long 

Set LastRow = ActiveSheet.Cells.Find(What:="*", After:=evaluatierooster_NLFR.Range("A1"), _ 
            SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row 

ActiveSheet.Cells(LastRow, 1).Paste 
+0

你会得到一个错误,因为你已经定义** LASTROW为龙**,所以你并不需要使用*设置*关键字这是只对返回的对象变量引用。 我在下面提供了一个替代代码,但您可以删除** Set ** – 2013-03-27 12:50:25

回答

0

尝试以下:

'~~> Copy evaluatierooster_NL to evaluatierooster_NLFR 
Dim LastRow As Long 

Sheets("evaluatierooster_NL").Select 
Rows("1:" & Rows.Count).Copy 
Sheets("evaluatierooster_NLFR").Select 
Range("A1").Select 
ActiveSheet.Paste 

Sheets("evaluatierooster_FR").Select 
Rows("2:" & Rows.Count).Copy 
Sheets("evaluatierooster_NLFR").Select 

' get the last row (same as doing CTRL+Up keystroke in Excel)  
LastRow = activesheet.range("A65536").end(xlup).row+1 

ActiveSheet.Cells(LastRow, 1).Paste 

应该这样做。

0

请尝试以下代码。

Dim lastRow As Long 

lastRow = Sheets("evaluatierooster_NL").Range("A65000").End(xlUp).Row 
Sheets("evaluatierooster_NL").Rows("1:" & lastRow).Copy Sheets("evaluatierooster_NLFR").Range("A1") 

lastRow = Sheets("evaluatierooster_FR").Range("A65000").End(xlUp).Row 
Sheets("evaluatierooster_FR").Rows("2:" & lastRow).Copy Sheets("evaluatierooster_NLFR").Range("A65000").End(xlUp).Offset(1, 0) 
相关问题