Генерация целых чисел в ячейке - VBA

Узнай цену своей работы

Формулировка задачи:

Приветствую, уважаемые программисты! Помогите, пожалуйста написать код для макроса в MSE.
Пишу такой код, а рандом выдает и дробные, и отрицательные числа, а мне надо, чтобы выдавались значения типа Byte, например. Кто поможет помочь и написать нормальный код?

Решение задачи: «Генерация целых чисел в ячейке»

textual
Листинг программы
Sub GetRandom()
Dim chgRange As Range, tstRange As Range, c As Range
Dim bestNum() As Long, num() As Long, i&, j&, bestCrit&
  Set chgRange = Range("B10,B15,B22,B25,B32,B20,B7")      'изменяемые ячейки
  Set tstRange = Range("L7")                              'критерий (чем больше, тем лучше)
  ReDim num(1 To chgRange.Count)
  Application.Calculation = xlCalculationManual
  Application.ScreenUpdating = False
  Randomize
  For i = 1 To 10000                                      'число повторов
    j = 0
    For Each c In chgRange
      j = j + 1
      num(j) = Int(21 + Rnd * 30)                         'диапазон случайных - от 21 до 50
      c = num(j)
    Next
    ActiveSheet.Calculate
    If tstRange > bestCrit Then
      bestNum = num
      bestCrit = tstRange
      If bestCrit = 28 Then Exit For
    End If
  Next
  j = 0
  For Each c In chgRange
    j = j + 1
    c = bestNum(j)
  Next
  Application.Calculation = xlCalculationAutomatic
  Application.ScreenUpdating = True
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.2 из 5
Похожие ответы