2016-06-24 12 views
0

私のコードでセルの内容をチェックしたいと思います。空白の場合は、セルをスキップして次のセルに移動して同じことをします。空白でない場合は、別のセルを選択し、現在の時刻を入力します。次のコードは、1つのセルしかチェックしていないときに働いていましたが、複数のセルを追加すると(チェックするセルが32個あります)、「Next for For」が表示されます。それから、私は迷う。内容のセルをチェックし、システム時間を入力してください

Sub time() 
If Range("f2") <> "" Then 
    ActiveSheet.Range("f8").Select 
    ActiveCell = Format(TimeValue(Now), "h:mm a/p") 
Next 
If Range("h2") <> "" Then 
    ActiveSheet.Range("h8").Select 
    ActiveCell = Format(TimeValue(Now), "h:mm a/p") 
Next 
If Range("j2") <> "" Then 
    ActiveSheet.Range("j8").Select 
    ActiveCell = Format(TimeValue(Now), "h:mm a/p") 

Else 
End If 
End Sub 

答えて

0

ルーピング時にのみNextを使用してください。

Sub time() 

     Dim x as Integer 

     For x= 6 to 10 Step 2 
      If Cells(2,x) <> "" Then 
       Cells(8,x)=Format(TimeValue(Now),"h:mm a/p") 
      End If 
     Next x 

End Sub 
:あなたの細胞はランダムなので、ループとして実行するには End If

Sub time() 

    If Range("f2") <> "" Then 
     ActiveSheet.Range("f8") = Format(TimeValue(Now), "h:mm a/p") 
    End If 

    If Range("h2") <> "" Then 
     ActiveSheet.Range("h8") = Format(TimeValue(Now), "h:mm a/p") 
    End If 

    If Range("j2") <> "" Then 
     ActiveSheet.Range("j8") = Format(TimeValue(Now), "h:mm a/p") 
    End If 

End Sub 

で閉鎖する必要がIf独立したテストとそれぞれ

関連する問題