|
楼主 |
发表于 2016-10-18 14:31
|
显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件 ★ 免费下载 ★ ★ 使用帮助★
你的代码可以修改一下,减少无效循环。
- Sub zz()
- Dim d As Object, n&, j%, Msg$
- Set d = CreateObject("scripting.dictionary")
- n = InputBox("Numbers", , 10)
- t = InputBox("Step Length", , 3)
- For i = 1 To n
- d(i) = ""
- Next
- 'k = d.keys
-
- Do
- k = d.keys '读取字典内容(更新后的剩余人数)
- For i = 0 To UBound(k)
- j = j + 1: If j = t Then d.Remove (k(i)): j = 0
- Next
- Loop Until d.Count = 1
- MsgBox d.keys()(0)
- Set d = Nothing
- End Sub
复制代码
这样显然不用在k数组中反复循环,判断是否数组对应内容为空白了。
如果投机取巧,那么第一次加入字典时就可以去掉j=t的部分。
|
|