Венкатараманану необходимо генерировать случайные числа в диапазоне от -99 до +99, исключая однозначные числа (от -9 до +9). Он задается вопросом, есть ли способ выполнить задачу.

Есть несколько функций рабочего листа, которые часто используются для генерации случайных чисел в Excel. Функция RAND используется для генерации случайного числа от 0 до 1, а функция RANDBETWEEN (часть пакета Analysis ToolPak) используется для генерации случайного числа в диапазоне чисел.

Не существует функции, которая позволяла бы делать то, что хочет Венкатараманан, но вы можете написать формулу, которая поможет. Рассмотрим эту формулу:

=IF(RAND()>0.5,1,-1)*(RANDBETWEEN(10,99))

Первая функция RAND определяет, является ли результат «+» или «-», а следующая функция RANDBETWEEN возвращает желаемое число от 10 до 99.

Когда функция будет выполнена, у вас будет желаемое двузначное случайное число.

Другая формула похожа по своей природе:

=ROUND(RAND()89+10,0)((RAND()<0.5)*2-1)

Первая часть генерирует целые числа в диапазоне от 0 до 89. Формула добавляет к этому 10, фактически давая число от 10 до 99. Затем вторая часть формулы используется для случайного определения, должен ли результат быть положительным или отрицательным. .

Другой подход полностью основан на функции RANDBETWEEN и не использует никакого умножения:

=VALUE(IF(RANDBETWEEN(0,1)=0,"-","")&RANDBETWEEN(1,9)&RANDBETWEEN(0,9))

Формула объединяет строку, состоящую либо из знака минус, либо из пробела, за которым следуют две цифры. Затем формула использует функцию VALUE для преобразования строки в числовое значение. Еще более короткая версия формулы была бы такой:

=VALUE(IF(RANDBETWEEN(0,1)=0,"-","")&RANDBETWEEN(10,99))

ExcelTips — ваш источник экономичного обучения Microsoft Excel.

Этот совет (3403) применим к Microsoft Excel 97, 2000, 2002 и 2003. Вы можете найти версию этого совета для ленточного интерфейса Excel (Excel 2007 и новее) здесь:

link: / excelribbon-Generating_Double-Digit_Random_Numbers [Генерация двузначных случайных чисел].