Страницы: 1
RSS
Разбивка данных по интервалам
 
Здравствуйте!
помогите пожалуйста решить задачку

есть массив (a,b - десятичные числа начало и конец интервала, цвет - текст)
а / b - цвет
0 / 28,3 - красный
28,3 / 32 - белый
32 / 35 - зелёный
35 / 40 - жёлтый

необходимо разделить это хозяйство на интервалы по 10 единиц, при этом у каждого "цвета" есть своя цена (красный - 0, белый - 0,3, жёлтый - 0,7, зелёный -1) и при попадании в 1 блок (10 единиц интервала) нескольких цветов в зависимости от высоты интервала расчет идёт по формуле:
(0*высота красного+0,3*высота белого+0,7*высота жёлтого+1*высота зелёного)/10

как ответ получится
0 /10 - 0
10 / 20 - 0
20 / 30 - 0.051 (сюда попал красный интервал 8,3 единиц и 1,7 белого)
30 / 40 - 0,71 ( с учётом что здесь интервалы 2 белого, 3 зелёного и 5 жёлтого)

задача в том что необходимо это автоматизировать количество строк разное по всем объектам, и чтобы привести все к общему качественному показателю необходимо все привести к одной линейке.
пробовал написать алгоритм для загрузки в VBA, но увы я не пью спиртного и результат немного предсказуем. Поэтому прошу помощи
Изменено: GigaMiga - 19.11.2018 16:12:25
 
Читаем правила, в частности - файл-пример.

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
файл с примером добавлен
 
"Ну ты, Барин, и задачи ставишь". Только к концу работы понял, что делаю не то и считаю вес не внутри интервала, а от 0. Переделывать уже сил/желания нету. Если модифицировать формулу в столбце G, то можно будет получить нужный Вам результат.

В столбцах G-N строчки 11=40 приведены чисто для примера. Там в столбец G можно вбить то, что нужно и всё пересчитается. Формула в столбце J ее зависит от от столбцов K-N.
Я не волшебник, я только учусь.
 
GigaMiga, насколько я понял, то Вы в примере показали как есть, но я не вижу как должен выглядеть результат. Сделайте его вручную, чтобы была полная ясность, как должен выглядеть конечный результат.
Цитата
GigaMiga написал: пробовал написать алгоритм для загрузки в VBA, но увы я не пью спиртного и результат немного предсказуем
К чему это вообще? Я не пью спиртного. И что?

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
Цитата
JayBhagavan написал:
Вы в примере показали как есть, но я не вижу как должен выглядеть результат.
наверно забыл в файле пояснить

левая таблица - дано
правая - результат
 
Wiss, спасибо,

я правильно понял, Вы пересчитали сколько цветов приходится на каждую десятку, и по формуле насчитали ценник?
 
Я посчитал сколько получается от 0 до верхней границы десятки и "насчитал ценник"
В приложении вроде бы нормальная версия. Проверяйте.

P.S. При расчётах  используется таблица B10:E15. И значения из столбцов G и H. Итоговая формула в ячейке K24.
Изменено: Wiss - 19.11.2018 15:21:52
Я не волшебник, я только учусь.
 
Wiss,да все сходится,

спасибо выручили)

только теперь проблема. Данное решение не работает если на входе и выходе число строк больше четырех со случайными размерами интервалов и распределением цветов. К тому же данное решение не учитывает что на входной и выходной таблице может быть разное количество строк.

в файле идёт жёсткая привязка к 4 значениям без условия поиска по цвету
Изменено: GigaMiga - 20.11.2018 12:02:03
Страницы: 1
Наверх