Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.12.2012, 11:35   #1
Nicolas_46
Пользователь
 
Регистрация: 13.09.2012
Сообщений: 53
По умолчанию генератор случайных чисел

Господа, простейший вопрос, но не как не могу догодаться.
Пытаюсь пользоваться генератором случайных чисел.
как сделать чтобы оставалась целая часть числа не изменной, а дробная
менялась случайным образом.
пытался сделать вот таким образом, но необходимо чтобы целая часть задавалась в ячейке, или в userform.
Код:
Sub Генератор()

Randomize
     
    Dim cell As Range, ra As Range
    Set ra = Intersect(Selection, ActiveSheet.UsedRange)
    If ra Is Nothing Then
    MsgBox "Пустые ячейки отсутствуют!", _
                vbExclamation, "Ничего не заполнять"
     Else
        Application.ScreenUpdating = False    
        For Each cell In ra.Cells
        If Trim(cell) = "" Then cell = "22," & Fix(Rnd() * 9 + 1)
        Next cell
        End If
End Sub
Nicolas_46 вне форума Ответить с цитированием
Старый 03.12.2012, 11:42   #2
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

а так не пойдет:
Код:
cell = 22 + Rnd()
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 03.12.2012, 12:20   #3
Nicolas_46
Пользователь
 
Регистрация: 13.09.2012
Сообщений: 53
По умолчанию

Цитата:
cell = 22 + Rnd()
Так догодался как сделать, необходимо чтобы целая часть задавалась в ячейке в ручную
не знаю на что нужно заменить "22," встроке
Then cell = "22," & Fix(Rnd() * 9 + 1)
чтобы вместо 22 вставлялось например значение из ячейки М1
Nicolas_46 вне форума Ответить с цитированием
Старый 03.12.2012, 13:01   #4
Nicolas_46
Пользователь
 
Регистрация: 13.09.2012
Сообщений: 53
По умолчанию

Но лучше бы было если бы можно задавать диапозон
например: с 20,1 до 22,3
тогда целая часть может быть переменной.
но диапозон тоже необходимо задавать в ручную в ячейках
Nicolas_46 вне форума Ответить с цитированием
Старый 03.12.2012, 13:07   #5
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

однако...
когда в школе математика была, курили по подворотням?
= [m1]+([m2]-[m1])*rnd()
в ячейке М1 - минимальное значение
в ячейке М2 - максимальное
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 03.12.2012, 13:11   #6
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

давайте еще проще: в М1 и М2 - границы диапазона
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 03.12.2012, 13:12   #7
DiemonStar
Старожил
 
Регистрация: 08.02.2012
Сообщений: 2,173
По умолчанию

Код:
=B1 + (C1-B1)*СЛЧИС()
где в B1 и C1 заданы границы
Правильно поставленная задача - три четверти решения.
DiemonStar вне форума Ответить с цитированием
Старый 03.12.2012, 13:30   #8
Nicolas_46
Пользователь
 
Регистрация: 13.09.2012
Сообщений: 53
По умолчанию

Благодарю вас господа, все заработало))) А на математике интегральные уравнения щелкал, про случайные числа почему-то не где не встречал.
Nicolas_46 вне форума Ответить с цитированием
Старый 03.12.2012, 13:47   #9
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Цитата:
на математике интегральные уравнения щелкал
это институтский курс высшей математики, у меня с этим проблемы, теперь хоть буду знать к кому обратиться.

заранее, спасибо!
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 03.12.2012, 14:35   #10
Nicolas_46
Пользователь
 
Регистрация: 13.09.2012
Сообщений: 53
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
это институтский курс высшей математики, у меня с этим проблемы, теперь хоть буду знать к кому обратиться.

заранее, спасибо!
буду рад помоч)
Nicolas_46 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Генератор случайных чисел remont_it, C++ Builder 1 12.05.2012 21:11
Генератор случайных чисел Evgenii(Евгений) Помощь студентам 6 23.01.2011 22:41
Генератор случайных чисел Костян Пират Общие вопросы Delphi 8 23.01.2011 22:08
C++ генератор случайных чисел sir.andrey Помощь студентам 4 03.09.2010 12:22
генератор случайных чисел на С++ ANTI Общие вопросы C/C++ 20 12.04.2009 13:02