2016-10-13 8 views
0

VBAでコードを書く際に助けが必要です。私はそれをかなりよく理解していると思ったが、明らかにそうではなかった。VBAのIfステートメントを使用してコピーと貼り付けを実行する

私はワークブックに「データ」と「結果」という2つのワークシートを持っています。 "データ"にはE2からE580の内容が含まれていますが、これは+/-を変更する可能性があります。 「結果」には、「データ」に内容がある場合(E2:E580)にのみD2にコピーされる必要があるC10の内容があります。ここで私はこれまで持っているものです。

Worksheets("Data").If (Range("E2:E580") = " ", Copy.Worksheets("Results").Range("C10") AND Paste.Worksheets("Data").Range("D2:D580"), False) 

取得コンパイルエラー:事前にあなたの助けを 期待=

感謝。

+2

マクロを記録し、そのコードがどのように見えるかを確認することをお勧めします。 –

+0

これを読んで、If then elseの使用方法を理解してください。https://msdn.microsoft.com/library/752y8abs.aspx – Magnetron

答えて

0
Sub copy_data() 
Dim i As Integer 

For i = 2 To Sheets("Data").Cells(Rows.Count, "E").End(xlUp).Row 
    If Sheets("Data").Cells(i, 5) <> "" Then 
    Sheets("Results").Cells(i, 4) = Sheets("Results").Range("C10") 
    Else 
    Sheets("Results").Cells(i, 4) = "" 
    End If 
Next i 
End Sub 

説明:ループカラムEを介して「データ」の最後のエントリまでと「データ」に対応するセルの値がある場合、列Dに「結果」のC10からコンテンツをコピーします。値がない場合は、空の文字列を入力してください。

関連する問題