У меня есть данные, как это:Минимизация различий в указанном количестве групп промежуточного итога
A B C D
Book1 1 49
2 37
3 31
4 46 163
5 35
6 47
7 40
8 38 160
9 45
10 25
11 38
12 29
13 25
14 18 180
где столбец D содержит подытоги для (переменной) числа элементов из столбца C.
То, что я пытаюсь Выполнение, учитывая заданное количество этих промежуточных итогов, должно быть максимально приближенным к их среднему (что может быть справедливо для небольшой выборки, но не обязательно в более крупной таблице). Другими словами, если общее количество элементов в столбце C составляет 15 000, и я хочу разделить их на 90 частей, тогда каждая из этих частей должна быть как можно ближе к 166.67 (15 000/90).
Порядок ColumnC не может быть изменен.
Как это можно сделать? (VBA будет работать для меня, если потребности.)
@pnuts: да, потому что я должен придерживаться порядка книг (столбец А) и глав (столбец B). – user438
** проблема, на которую можно ответить в нескольких параграфах **? - в этом случае достаточно нескольких строк *. – pnuts
Это очень интересная вариация на значительную и часто возникающую проблему [knackack problem] (http://en.wikipedia.org/wiki/Knapsack_problem), и я подозреваю, что это будет серьезная задача для решения именно с VBA. Проблема была определена узко, и ОП не требовал кода без публикации каких-либо. Ответ (вроде!) Возможен без VBA. Если вы недостаточно квалифицированы, чтобы судить, слишком ли широка ** ПОЖАЛУЙСТА, НЕ ВМЕШАЙТЕ **. – pnuts