2012-02-03 19 views
0

これは現在使用しているコードです。しかし、私はそれがA2から掴んでいる数値を取って、ColNの範囲でいっぱいになるにつれてそれを1だけ増やしたいと思っています。これは、すべてが同じ番号ではなく、一連の番号を作成します。別のセルに基づいてセルの範囲を塗りつぶしますが、数値の連続は7,8,9 ...

Order = Range("A2") 

Range("N2").Select 
ActiveCell.FormulaR1C1 = Order 
Range("N2").Select 
Range("N2", Range("N2").End(xlDown)).Name = "typeColRange" 
Selection.AutoFill Destination:=Range("N2:N" & Range("A" & Rows.count).End(xlUp).Row) 

答えて

0

なぜループはいいの?時にはシンプルな方がいいし、もっと重要なのは、コードを見ているときにコードが何をしようとしているのかを簡単に伝えることです。

Sub test() 

Dim i As Long, lastCell As Long, counter As Long 

lastCell = Range("A" & Rows.Count).End(xlUp).Row 
counter = Range("A2").Value 

For i = 2 To lastCell 
    Cells(i, "N") = counter 
    counter = counter + 1 
Next 

End Sub 
+0

また、画面更新をオフにすることもできますが、単純なforループはどちらにしてもかなり瞬間的になるはずです。 – aevanko

関連する問題