2012-05-17 81 views
0

我有一個ActiveSheet腳本,在那裏我把原始數據移動到行Q:V。我有一個運行並顯示在最後一行,在這種情況下,最後一行是77如何將單元格複製到最後一行並粘貼到另一個工作表?

lastrow = .Cells(.Rows.Count, "Q").End(xlUp).Row 

我想它自Q需要到V最後一行,複製和粘貼有它VBA腳本它成爲工作表1 ...

我猜它會看起來像這樣,但我想首先在這裏驗證...因爲我正常的網站,我去維修由於某種原因。

Sub test() 
     Dim wsPOD As Worksheet 
    Dim wsPOT As Worksheet 
    Dim wsPOA As Worksheet 
    Dim cel As Range 
    Dim lastrow As Long, i As Long, Er As Long 

    Set wsPOD = Sheets("PO Data") 
    Set wsPOT = Sheets("PO Tracking") 
    Set wsPOA = Sheets("PO Archive") 

     With ActiveSheet 
      .AutoFilterMode = False 
      Intersect(.UsedRange, .Columns("A")).Cut .Range("Q1") 
      Intersect(.UsedRange, .Columns("D")).Cut .Range("R1") 
      Intersect(.UsedRange, .Columns("C")).Cut .Range("S1") 
      Intersect(.UsedRange, .Columns("B")).Cut .Range("T1") 
      Intersect(.UsedRange, .Columns("G")).Cut .Range("U1") 
      Intersect(.UsedRange, .Columns("F")).Cut .Range("V1") 
      lastrow = .Cells(.Rows.Count, "N").End(xlUp).Row 
      Intersect (.UsedRange.Range("Q:V" & lastrow).Copy) 
      Intersect (wsPOT.Range("B3:H" & lastrow).PasteSpecialxlPasteFormats) 
     End With 
End Sub 

這顯然是行不通的,如果有人能幫助我,這可以理解。

回答

2

這是你正在嘗試>

With ActiveSheet 
    .AutoFilterMode = False 
    ' 
    '~~> Rest of the code 
    ' 
    lastRow = .Range("N" & Rows.Count).End(xlUp).Row 
    .Range("Q1:V" & lastRow).Copy 
    wsPOT.Range("B3").PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _ 
    SkipBlanks:=False, Transpose:=False 
End With 

xlPasteFormats將只粘貼格式,而不是價值。如果要粘貼值,然後改變xlPasteFormatsxlPasteValues

+0

而亞洲時報Siddharth固定代碼,值得一提的是,這些線是壞的交集(.UsedRange.Range(「Q:V」和LASTROW).Copy) 相交(wsPOT.Range(「B3:H」&lastrow).PasteSpecialxlPasteFormats)(根本不需要Intersect(),因爲你沒有交叉任何東西。 –

0
Option Explicit 
Sub copylocation() 
    Dim EC As Long 
    Dim X As Long 
    Dim Y As Long 
    X = Range("B1").End(xlUp).Offset(1, 0).Row 
    EC = Range("b1").End(xlToLeft).Offset(0, X).Column 
    Windows("Book2").Activate 
    Range("b1:AB" & EC).Select 
    Selection.Copy 
    Windows("Book1").Activate 
    Range("b1").Select 
    ActiveSheet.Paste 
End Sub 
+0

我修改了代碼格式並刪除了所有'在此處發佈代碼' –

相關問題