回覆列表
  • 1 # daazhu1

    我有辦法,用Vba

    原理:產生一個隨機數,隨機讀取指定行內某一行的資料,用迴圈來讀取總量的五分之一,由於行號是隨機的,所以此機率就為20%

  • 2 # Excel高效技能

    效果演示:

    程式碼如下:

    Sub Rnddatao()

    "清空提取結果

    Range("B2:B11").Clear

    Dim startrow As Integer "起始資料行位置

    Dim endrow As Integer "結束行資料位置

    Dim percentage As Double "需要提取的百分比

    Dim datacount As Integer "需要提取多少個數據

    percentage = 0.2

    startrow = 2

    endrow = 11

    "計算提取多少個數據 , (結束行起始行) * 百分比, 最後取整

    datacount = Int((endrow - startrow + 1) * percentage)

    For i = 1 To datacount "迴圈取多少個數據

    1:

    rndrow = Application.WorksheetFunction.RandBetween(startrow, endrow)

    If Range("B" & rndrow) = "" Then

    Range("B" & rndrow) = Range("A" & rndrow)

    Else

    GoTo 1:

    End If

    Next

    MsgBox "提取完成!", 64, "提示"

    End Sub

  • 中秋節和大豐收的關聯?
  • 什麼是“日本鋸”?