2016-06-22 8 views
0

昨日の情報を含む1枚のシートから、履歴データのテーブルを使って別のシートにデータをコピーしています。最初のシートは実際には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

はコンパイルされません。なぜなら、構文エラーがあるからです。 –

関連する問題