读书人

按要求分配百分比解决办法

发布时间: 2013-11-29 00:21:24 作者: rapoo

按要求分配百分比
编号 名称 百分比
123 1组 45%
3组 55%
231 4组 15%
5组 26%
6组 34%
7组 25%




上面的表格能不能根据编号的不同生成随机的百分比呢?但是不能平均。请大神指点。谢谢!一个简单的函数后者其他方式
[解决办法]


Dim n As Integer, m As Integer, i As Integer, p As Integer, tmp As Integer


n = 4

m = 100
Randomize
For i = 1 To n - 1
Do
p = m * Rnd()
tmp = m - p
Loop Until tmp > n - i
m = tmp
Debug.Print i, p
Next i

Debug.Print i, m



[解决办法]
如果是在VBA里面计算机EXCEL中各行的百分比的话,大概的算法是这样的:

do 循环,直到第四列没有传扬为止
记当前行号i
设置动态数组,最大下标为1
读第四列值,存入动态数组最大下标的元素
如果第一列下一行没有值,把数组最大下标加一,到上一句
否则,计算数组各元素的和,从行号i开始,计算该行第四列值占和的百分比,写入该行第五列
同时行号递增
loop
[解决办法]
do 循环,直到第四列没有数据为止

读书人网 >VB

热点推荐