Форумы HiProg.com - MS ACCESS, VBA, VB

 

Ответить на сообщение

Вернуться к теме

Вы отвечаете на сообщение:

ник: Lukas
Новая версия (с учетом поправки ShadowOfSun), надеюсь последняя:

Public Function LongToBinStr(ByVal Number As Long, Optional Digits As Long = 32) As String
    Dim i As Long
    Const ZERO As String = "0"
    Const ONE As String = "1"
    LongToBinStr = String(Digits, ZERO)
    
    For i = Digits To 1 Step -1
        If Number Mod 2 Then
            Mid$(LongToBinStr, i, 1) = ONE
        End If
        Number = Number \ 2
        If Number = 0 Then Exit Function ' уменьшает время на 30% при 32 знаках  и 15% при 24 знаках
    Next i
End Function


Итого: по сравнению с первой строковой функцией (Двоичное) скорость выросла более чем в 5 раз.


Ваше имя:

Пароль:

Цитировать: [quote][/quote] Код: [code][/code]
Жирный: [b][/b] Наклонный: [i][/i]
URL: [url][/url] 

Сообщение:

 Размер файла не более 50 Кбт. Большие файлы можно размещать на www.slil.ru

Прикрепить:

 

Для вставки смайлов в текст щелкните по значку.