Я хотел бы сделать формулу, которая может по существу вычислить средний результат броска костей, подумайте о Dungeons and Dragons.

Я хочу использовать одну формулу для расчета любого возможного броска, используя каждое число, как при вводе. Если я хочу вычислить бросок 1d3+2, я могу использовать = RANDBETWEEN(1,3)+2, но как я могу вычислить бросок 2d3 без необходимости редактировать формулу? Как мне выполнить RANDBETWEEN() произвольное количество раз в пределах одной формулы?

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

Я готов принять ответ «нет», я мог бы создать решение в VBA, если бы мне пришлось, но я хотел бы знать, может ли Excel справиться с этим для простоты.

1 ответ1

2

Сначала вы захотите создать таблицу с указанным количеством игральных костей. Таким образом, в A6 введите следующую формулу и скопируйте столько раз, сколько у вас будет общего количества искомых костей:

=IF(ROW(1:1)<=$A$2,ROW(1:1),"")

Это будет относиться к A2, где я поставил желаемое количество кубиков.

Затем в B6 положите это и скопируйте:

=IF(A6<>"",RANDBETWEEN(1,$B$2),"")

Это создаст случайный "бросок" этих костей. 1 ряд для каждой кости. В2 содержит количество сторон.

Затем суммируйте и добавьте константу с помощью:

=SUM($B$6:$B$1000)+$C$2


Чтобы сделать это в одной ячейке, используйте эту формулу массива:

=SUM(RANDBETWEEN(1,(ROW(INDEX($A:$A,1):INDEX($A:$A,$A2))<=$A2)*$B2))+$C2

Будучи формулой массива, она должна быть подтверждена Ctrl-Shift-Enter вместо Enter при выходе из режима редактирования.

Это будет делать число RandBetweens, отмеченных в A2, с верхним пределом Случайных чисел, установленным числом сторон.

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