Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Случайные числа без повторений - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Случайные числа без повторений (Макросы/Sub)
Случайные числа без повторений
Asretyq Дата: Четверг, 24.10.2019, 19:38 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 200
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Доброго времени суток!
Хотелось бы узнать есть ли такой функционал, например числа от 1 до 10 повторяются случайно НЕ ПОВТОРЯЯСЬ!! и не внеся в ячейки информации
думаю очень полезный функционал, польза будет в этом не только для меня


Сообщение отредактировал Asretyq - Четверг, 24.10.2019, 19:39
 
Ответить
СообщениеДоброго времени суток!
Хотелось бы узнать есть ли такой функционал, например числа от 1 до 10 повторяются случайно НЕ ПОВТОРЯЯСЬ!! и не внеся в ячейки информации
думаю очень полезный функционал, польза будет в этом не только для меня

Автор - Asretyq
Дата добавления - 24.10.2019 в 19:38
Апострофф Дата: Четверг, 24.10.2019, 20:19 | Сообщение № 2
Группа: Проверенные
Ранг: Обитатель
Сообщений: 444
Репутация: 122 ±
Замечаний: 0% ±

Excel 1997
Нашел в загашнике-[vba]
Код
Sub www2()
    Dim i&, j&, arr&(1 To 30, 1 To 1)
    Randomize
    For i = 1 To 30
        j = Int(Rnd * i + 1)
        arr(i, 1) = arr(j, 1)
        arr(j, 1) = i
    Next i
    Cells(1, 1).Resize(30) = arr
End Sub
[/vba]
 
Ответить
СообщениеНашел в загашнике-[vba]
Код
Sub www2()
    Dim i&, j&, arr&(1 To 30, 1 To 1)
    Randomize
    For i = 1 To 30
        j = Int(Rnd * i + 1)
        arr(i, 1) = arr(j, 1)
        arr(j, 1) = i
    Next i
    Cells(1, 1).Resize(30) = arr
End Sub
[/vba]

Автор - Апострофф
Дата добавления - 24.10.2019 в 20:19
Asretyq Дата: Четверг, 24.10.2019, 20:28 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 200
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
все таки памяти мне кажется нету встроенной у системы vba
я много примеров находил на просторах интернета
суть в чем - допустим в ячейке А1 вносятся каждый раз новые значения с учетом запоминания предыдущих значений
ну неважно либо отображение в [vba]
Код
Debug.Print
[/vba]
например я сталкивался с такой трудностью, чтобы сохранить в памяти нужно обязательно вносить в ячейку
а есть ли память "скрытая", которая бы хранила информацию
 
Ответить
Сообщениевсе таки памяти мне кажется нету встроенной у системы vba
я много примеров находил на просторах интернета
суть в чем - допустим в ячейке А1 вносятся каждый раз новые значения с учетом запоминания предыдущих значений
ну неважно либо отображение в [vba]
Код
Debug.Print
[/vba]
например я сталкивался с такой трудностью, чтобы сохранить в памяти нужно обязательно вносить в ячейку
а есть ли память "скрытая", которая бы хранила информацию

Автор - Asretyq
Дата добавления - 24.10.2019 в 20:28
Апострофф Дата: Четверг, 24.10.2019, 20:38 | Сообщение № 4
Группа: Проверенные
Ранг: Обитатель
Сообщений: 444
Репутация: 122 ±
Замечаний: 0% ±

Excel 1997
Asretyq, вы о чём? VBA, как все ЯП, пользуется общей ОП (оперативной памятью).
Массив arr() заполнили - и выводите его куда хотите. Урезать приведенный пример до 10 и одной размерности не сумеете?
 
Ответить
СообщениеAsretyq, вы о чём? VBA, как все ЯП, пользуется общей ОП (оперативной памятью).
Массив arr() заполнили - и выводите его куда хотите. Урезать приведенный пример до 10 и одной размерности не сумеете?

Автор - Апострофф
Дата добавления - 24.10.2019 в 20:38
Asretyq Дата: Четверг, 24.10.2019, 22:33 | Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 200
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
выгрузить последовательно не смог в ячейку А1, нажимая на кнопочку 30 раз разные значения :)


Сообщение отредактировал Asretyq - Четверг, 24.10.2019, 22:34
 
Ответить
Сообщениевыгрузить последовательно не смог в ячейку А1, нажимая на кнопочку 30 раз разные значения :)

Автор - Asretyq
Дата добавления - 24.10.2019 в 22:33
Апострофф Дата: Четверг, 24.10.2019, 23:17 | Сообщение № 6
Группа: Проверенные
Ранг: Обитатель
Сообщений: 444
Репутация: 122 ±
Замечаний: 0% ±

Excel 1997
не смог

Печально booze
[vba]
Код
Sub Кнопа_тык_10()
    Dim i&, j&
    Static arr&(1 To 10), n&
    If arr(1) = 0 Then
      Randomize
      For i = 1 To 10
          j = Int(Rnd * i + 1)
          arr(i) = arr(j)
          arr(j) = i
      Next i
    End If
    n = 1 + n Mod 10
    [A1] = arr(n)
End Sub
[/vba]
 
Ответить
Сообщение
не смог

Печально booze
[vba]
Код
Sub Кнопа_тык_10()
    Dim i&, j&
    Static arr&(1 To 10), n&
    If arr(1) = 0 Then
      Randomize
      For i = 1 To 10
          j = Int(Rnd * i + 1)
          arr(i) = arr(j)
          arr(j) = i
      Next i
    End If
    n = 1 + n Mod 10
    [A1] = arr(n)
End Sub
[/vba]

Автор - Апострофф
Дата добавления - 24.10.2019 в 23:17
Asretyq Дата: Пятница, 25.10.2019, 07:49 | Сообщение № 7
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 200
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
respect
 
Ответить
Сообщениеrespect

Автор - Asretyq
Дата добавления - 25.10.2019 в 07:49
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Случайные числа без повторений (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!