在Excel中,我想生成1000行值,我只知道初始值和最终值。
例如,单元格a1 = 0.6,单元格a1000 = 0.2,我希望它们之间的值缓慢减少,只要它们不需要从每行减少相同的量(随机量)到另一行是否满足初始值和最终值,并且变化按降序排列?
任何想法我怎么能创建一个公式来实现这一目标?谢谢
答案 0 :(得分:1)
虽然使用单个公式可以合理地完成此操作,但在两个数字之间复制了所有998行,我认为它不会给出所需的结果。相反,我会分三步完成:
=(RAND()*0.4)+0.2
并从第2行复制到999 A
并在其顶部粘贴特殊>>值答案 1 :(得分:1)
使用 Sheet1 中的数据,运行宏 dural :
Sub dural()
Dim v1 As Double, v1000 As Double
v1 = Range("A1").Value
v1000 = Range("A1000").Value
Randomize
For i = 2 To 999
Cells(i, "A").Value = Rnd * (v1 - v1000) + v1000
Next i
Call SortData
End Sub
Sub SortData()
Columns("A:A").Select
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range("A1"), _
SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Sheet1").Sort
.SetRange Range("A1:A1000")
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub