Объясните пожалуйста, как с помощью макросов в зависимости от значения доли (рассчитывается после ввода количества) на форме выставить баллы, в данном случае, по 12-балльной шкале (там где наибольшая доля там выше балл). С помощью цикла if else замучаешься делать.
[вложение удалено администратором]
Наталья, а по какому принципу присваиваются баллы? По какой-формуле? Или excel-функция Ранг делает то, что нужно, и мне можно сделать так, как делает excel-функция Ранг?
Баллы не рассчитываются по формуле, они просто выставляются по порядку от 1 до 12: находится максимальная доля - это 12 баллов и дальше по убыванию, так получается что минимальная доля - это 1 балл. При этом баллы не повторяются, при повторяющихся долях баллы просто идут в последовательности.
Наталья, предположу, что нужно сделать так:
- создайте массив, состоящий из трёх столбцов;
- в первый столбец скопируйте данные из лейбелов "Доля";
- во второй столбец скопируйте имена лейбелов "Доля";
- отсортируйте массив, например, с помощью метода "Пузырёк";
- в третий столбец проставьте номера от 1 до 12;
- теперь двигайтесь по массиву и, используя столбец 2, записывайте в соответствующий лейбел "Баллы" данные из столбца 3.
Если не знаете, как это делать, то разбивайте Вашу задачу на части и создавайте для каждой части тему. Этот форум предназначен для обсуждения только простых вопросов (это форум для развлечения и отдыха от сложных задач).