Как в VBA получить настоящее рандомное число ?

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

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

Использую ряд макросов которые сохраняют документ на компьютере. Чтобы файлы не перезаписывались - добавляю рандомное число в конце имени файла. что-нибудь вроде.
Да вот беда, при каждом первом запуске Rnd() возвращает одно и то же число - 0,7055475 в итоге ошибки/перезаписывания я так понимаю что у команды Rnd просто записана где-то последовательность цифр ? Как получить настоящий рандом ?

Решение задачи: «Как в VBA получить настоящее рандомное число ?»

textual
Листинг программы
' глобальные переменные...
Dim tmpTime As Date, tmpDate As Date
Dim tmpIndx As Integer
' процедура записи...
Sub SaveToFile()
    tmpDate = Now()
    If Second(tmpDate) = Second(tmpTime) Then
        tmpIndx = tmpIndx + 1
    Else
        tmpIndx = 0
        tmpTime = tmpDate - Int(tmpDate)
    End If
    '"КРсети/кр_сети_вар_" & var & "_" & Format(tmpDate, "dd_mm_yyyy_hh_mm_ss") & "_(" & tmpIndx & ").docx"
    Debug.Print "File_" & Format(tmpDate, "dd_mm_yyyy_hh_mm_ss") & "_(" & tmpIndx & ").docx"
End Sub

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


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

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

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