Excel 我想在循环每次打印值时停止循环
我使用此代码在工作表的列中获取不同的随机值,但此代码一次提供所有值。每次单击工作表按钮/活动x按钮后,我都希望逐个获取该值 例如,第一次单击时,单元格A1应填充第一个随机值,然后每次单击时,应填充A2、A3、A4和A5单元格。一旦所有的单元格都填满了,点击按钮什么都不会发生Excel 我想在循环每次打印值时停止循环,excel,vba,random,Excel,Vba,Random,我使用此代码在工作表的列中获取不同的随机值,但此代码一次提供所有值。每次单击工作表按钮/活动x按钮后,我都希望逐个获取该值 例如,第一次单击时,单元格A1应填充第一个随机值,然后每次单击时,应填充A2、A3、A4和A5单元格。一旦所有的单元格都填满了,点击按钮什么都不会发生 Option Explicit Sub RAND1() Dim myStart As Long Dim myEnd As Long Dim i As Long Dim a() Dim sh As Worksheet
Option Explicit
Sub RAND1()
Dim myStart As Long
Dim myEnd As Long
Dim i As Long
Dim a()
Dim sh As Worksheet
Set sh = Sheet1
myStart = 1
myEnd = 5
ReDim a(0 To myEnd - myStart)
With CreateObject("System.Collections.SortedList")
Randomize
For i = myStart To myEnd
.Item(Rnd) = i
Next i
For i = 0 To .Count - 1
a(i) = .GetByIndex(i)
Next
End With
sh.Range("a1").Resize(UBound(a) + 1).Value = Application.Transpose(a)
End Sub