Я пытаюсь составить таблицу турниров по рыбной ловле .... Я хотел бы выступить в одной ячейке, что, если их позиция была первой, они получают 100 баллов. если их позиция вторая, они получают 90 баллов, если они занимают третье место, они получают 80 ... И так до 10 ... Можно ли получить оператор "ЕСЛИ", который бы автоматически вычислял баллы, просто набирая число от 1 до 10?

если c2 = 1, то d2 = 100, если c2 = 2, тогда d2 = 90, если c2 = 3, тогда d2 = 80

и так далее

3 ответа3

2

Если вы хотите, чтобы это было более гибким (например, с 125, 100, ..., 45, 40, как вы указали в комментарии), лучше иметь где-нибудь таблицу "показателей", которая имеет ранг в первом столбце и оценку в во-вторых, например:

  A      B
╔══════╦═══════╗
║ Rank ║ Score ║
╠══════╬═══════╣
║ 1    ║ 125   ║
║ 2    ║ 100   ║
║ 3    ║ 75    ║
║ 4    ║ 50    ║
║ 5    ║ 45    ║
║ 6    ║ 40    ║
║ ...  ║       ║
╚══════╩═══════╝

Затем вы можете определить балл за звание по следующей формуле:

=VLOOKUP(C2,Scores!$A:$B,2,0)
1

Формула для d2:

=100-((c2-1)*10)

Скопируйте это вниз по списку (то есть от d2 до d11), и это даст правильные точки в столбце D

Если вы хотите скорректировать количество баллов, которые вы начисляете за первое место, просто измените 100 в начале формулы на любой максимальный балл, и все готово.

Это работает, потому что разница между местами (например, 2-й и 3-й) всегда 10. Если эти числа меняются (например, с 2-го по 3-е - разница 10 пунктов, с 3-го по 4-е - разница 20 пунктов), становится труднее изменить.

Для примера комментария вам нужно изменить формулу в D2 на что-то вроде:

=if(c2<5, 125-((c2-1)*250), 50-((c2-5)*5))
0

Вам не нужно использовать несколько операторов IF. Следующего будет достаточно:

=IF(position>0,MAX(100-(position-1)*10,0),0)

где положение - это ячейка, содержащая положение рыболова.

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