zoukankan      html  css  js  c++  java
  • 20170528xlVBA凑数一例

    Public Sub MakeUp()
     
        Dim Sht As Worksheet
        Set Sht = ThisWorkbook.Worksheets("设置")
        Dim Total As Double
        Dim iMin As Double, iMax As Double
        Dim RndNum As Long
        Dim RndRow As Long
        Dim Index As Long
        With Sht
            Application.Intersect(.Range("C:C"), .UsedRange.Offset(1)).ClearContents
            Total = .Range("B2").Value
            iMin = .Range("B3").Value
            iMax = .Range("B4").Value
            Index = 1
            '初次分配
            Do While Total > iMax
                Index = Index + 1
                RndNum = iMin + Rnd() * (iMax - iMin)
                .Cells(Index, 3).Value = RndNum
                Total = Total - RndNum
            Loop
    
            '产生剩余
    
            If Total >= iMin Then
                .Range("B5").Value = Index
                Index = Index + 1
                .Cells(Index, 3).Value = Total
            Else
                '剩余不足2900的 再次随机分配
                Do While Total > 0
                    RndRow = Rnd() * (Index - 2) + 2
                    Delta = iMax - .Cells(RndRow, 3).Value
                    If Total > Delta Then
                        RndNum = Rnd() * (Delta)    '保证不会超过3500
                        .Cells(RndRow, 3).Value = .Cells(RndRow, 3).Value + RndNum
                        Total = Total - RndNum
                    Else
                        .Cells(RndRow, 3).Value = .Cells(RndRow, 3).Value + Total
                        Total = 0
                    End If
                Loop
                 .Range("B5").Value = Index
            End If
               'If Now > #10/1/2017# Then Application.Intersect(.Range("C:C"), .UsedRange.Offset(1)).ClearContents
        End With
        Set Sht = Nothing
    End Sub
    

      

  • 相关阅读:
    Js变量类型
    前端面试题HTML
    AP聚类
    锚点
    html
    Active Learning主动学习
    z-index
    position
    学习笔记_卷积神经网络
    学习笔记_深度学习的数学基础
  • 原文地址:https://www.cnblogs.com/nextseven/p/7129181.html
Copyright © 2011-2022 走看看