2016-06-22 3 views
0

어제의 정보와 함께 한 시트의 데이터를 이전 데이터 테이블이있는 다른 시트로 복사하고 있습니다. 첫 번째 시트는 사실 vlookup 공식이므로이 값을 이전 테이블에 붙여 넣기 만하면됩니다. 이것은 내가 쓴 것이지만, 마지막 줄이 작동하지 않는다고 말하는 것입니다. 누구든지 도와 줄 수 있습니까?값을 대상에 복사하여 붙여 넣기

Option Explicit 


Sub Test() 
' 
' UpdateTablesAndCharts Macro 
' 
' Keyboard Shortcut: Option+Cmd+t 
' 


Dim lngNextEmptyRow As Long 
Dim lngLastImportRow As Long 
Dim shtYstrdy As Worksheet 
Set shtYstrdy = ThisWorkbook.Worksheets("Yesterday") 

With ThisWorkbook.Worksheets("ICT Historical Crashlytics Data") 
lngNextEmptyRow = .Cells(.Rows.Count, "A").End(xlUp).Row + 1 
.Rows(lngNextEmptyRow).Insert Shift:=xlDown 
.Cells(lngNextEmptyRow, "A").Value2 = _ 
    .Cells(lngNextEmptyRow - 1, "A").Value2 + 1 
shtYstrdy.Range("AM1:AN1").Copy 
    Cells("A" & lngNextEmptyRow).PasteSpecial xlPasteValues 


End With 

End Sub 

답변

3
  1. 세포() 형식 Cells(Rows,Column) 당신은 아마 범위를 원하는()입니다.

  2. 값을 붙이기 만하면 직접 할당하는 것이 더 빠릅니다.

  3. 셀() 앞에 .이 누락되어 적절한 부모 시트에 할당되지 않았습니다.

사용이 : 그것은 아직도 그 마지막 줄을 복용 아니에요 어떤 이유

Sub Test() 
' 
' UpdateTablesAndCharts Macro 
' 
' Keyboard Shortcut: Option+Cmd+t 
' 


Dim lngNextEmptyRow As Long 
Dim lngLastImportRow As Long 
Dim shtYstrdy As Worksheet 
Set shtYstrdy = ThisWorkbook.Worksheets("Yesterday") 

With ThisWorkbook.Worksheets("ICT Historical Crashlytics Data") 
    lngNextEmptyRow = .Cells(.Rows.Count, "A").End(xlUp).Row + 1 
    .Rows(lngNextEmptyRow).Insert Shift:=xlDown 
    .Cells(lngNextEmptyRow, "A").Value2 = _ 
     .Cells(lngNextEmptyRow - 1, "A").Value2 + 1 
    .Range("A" & lngNextEmptyRow).Resize(1, 2).Value = shtYstrdy.Range("AM1:AN1").Value 
End With 

End Sub 
+0

. 크기 조정은 무엇을합니까? –

+0

무엇이 오류입니까? –

+0

구문 오류가 있기 때문에 컴파일하지 않습니다 –