自动填充列

我刚开始使用VBA。 只是想知道如何填充从范围(“K5”)开始的列和从ComboBox1中取的值。 例如:如果范围(“K5”)= 22,范围(“K6”)= 23 …最终的数字是ComboBox2的值。

这是我现在的代码…

Dim temperature_1 As Integer 'from temperature_1 Dim temperature_2 As Integer 'to temperature_2 Dim k As Integer Dim l As Integer Dim range_degrees As Integer temperature_1 = Sheet1.ComboBox1 temperature_2 = Sheet1.ComboBox2 range_degrees = temperature_2 - temperature_1 For k = range("K5") To range_degrees For l = temperature_1 To temperature_2 ...... Next l Next k 

如果你真的想'自动填充'列,我只是填充范围的开始,并填写一系列。

 with activesheet .range("K5") = temperature_1 .range("K5").DataSeries Rowcol:=xlColumns, Type:=xlLinear, Step:=1, Stop:=temperature_2, Trend:=False end with 

如果您想以0.05°的方式增加,请将Step:=1参数更改为所需的增量。 如果您想要填充行而不是列,请将Rowcol:=xlColumns更改为Rowcol:=xlRows 。 用一系列的值来阻塞这样的值比循环更有效率。

 Private Sub FillRange() Dim temperature_1 As Integer 'from temperature_1 Dim temperature_2 As Integer 'to temperature_2 Dim k As Integer Dim l As Integer Dim range_degrees As Integer temperature_1 = Sheet1.ComboBox1 temperature_2 = Sheet1.ComboBox2 range_degrees = temperature_2 - temperature_1 Range("K5").Select For l = temperature_1 To temperature_2 ActiveCell.Value = l ActiveCell.Offset(1, 0).Select Next l End Sub