我目前在VBA for Excel工作,但我真的只精通Matlab。对于我的工作来说,为了时间目的而留在vba(而不是在excel的工作表上)的记忆非常重要。 我需要做的是创建一个连续整数数组,比如4000到5000。 在matlab中,这很简单,我只会... i = 4000:5000,或i = 4000:1:5000。第二种情况中的1是我的步骤。' 我想知道在vba中实现这个结果的最佳方法是什么? 感谢
答案 0 :(得分:1)
以下是创建并显示一组连续数字的示例:
Sub seqnum()
Dim firstnum As Long, secnum As Long
firstnum = 7
secnum = 23
ReDim ary(1 To secnum - firstnum + 1) As Long
For i = 1 To UBound(ary)
ary(i) = firstnum + (i - 1)
Next i
msg = ""
For i = 1 To UBound(ary)
msg = msg & i & vbTab & ary(i) & vbCrLf
Next i
MsgBox msg
End Sub
答案 1 :(得分:1)
没有循环 - 在发布
之后,刚刚看到Rory的上述答案相同Sub MakeArray()
Dim x As Long, y As Long, arr As Variant
x = 4000: y = 5000
arr = Evaluate("Row(" & x & ":" & y & ")")
'Show result
Sheets(1).Range("A1").Resize(y - x + 1) = arr
End Sub
答案 2 :(得分:-1)
我们"填写" - "系列": 写入第一个单元格编号ex。 400和#34;系列"窗口插入增量步骤和"停止值"最后的价值。恩。 420 或者使用宏
Range("I1").Select
ActiveCell.FormulaR1C1 = "4000"
Range("I1").Select
Selection.DataSeries Rowcol:=xlColumns, Type:=xlLinear, Date:=xlDay, _
Step:=1, Stop:=4020, Trend:=False