3

У меня есть лист Excel следующим образом:

 NO     NAME    AMOUNT
 1       A        50
 1       B        50
 2       A       100
 2       C       100
 3       D        70
 3       B        70
 4       A        30
 4       F        30
 5       C       150
 5       G       150
         .
         .
         .
         .

Есть, скажем, 10000 строк.

Я хочу получить случайную выборку из строк. Есть 2 условия:

1. Sampling must be based on "NO" column.
2. Size of the sample is determined by the user: it can be %5, %10 or %20.

Например, один решает случайным образом выбрать% 20 от общего числа строк в приведенном выше примере:

Результат как:

 NO     NAME    AMOUNT
 2       A       100
 2       C       100
90       Z       500
90       E       500
         .
         .
         .
         .

Там должно быть 2000 строк.

Я не знаю, является ли мой вопрос слишком конкретным. Я новичок в Excel VBA, и я столкнулся с такой ситуацией. Вышеописанный процесс касается получения случайной выборки из бухгалтерской книги для целей аудита.

1 ответ1

2

Я думаю, что ваш вопрос сводится к генерации выборочного набора: на ozgrid.com есть пример, который можно адаптировать для возврата набора номеров строк. Он создает массив номеров строк, случайным образом перемешивает их, а затем возвращает необходимое количество выборок из верхней части массива.

После того, как у вас есть набор выборок, это случай вытаскивания выбранных строк (автофильтр, копирование на другой лист или что-то еще)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .