Private Sub Form_Load()
Dim btr(0 To 3) As Byte
btr(0) = 170
btr(1) = 187
btr(2) = 204
btr(3) = 221
MsgBox getValueFFFF(btr())
End Sub
Function getValueFFFF(b() As Byte) As String
Dim s As Long
s = b(0) + (b(1) * 256) + (b(2) * 65536) + (b(3) * 16777216)
getValueFFFF = s
End Function
Ошибка Overflow
Код:
Результатом выполнения вункцыи [FONT="Courier New"]getValueFFFF[/FONT] должно быть число 3721182122. Но на указанном месте вылетает ошибка Overflow.
Код:
Private Sub Form_Load()
Dim btr(0 To 3) As Byte
btr(0) = 170
btr(1) = 187
btr(2) = 204
btr(3) = 221
MsgBox getValueFFFF(btr())
End Sub
Function getValueFFFF(ByRef b() As Byte) As Double
Dim s As Double
s = b(0) + (b(1) * 256#) + (b(2) * 65536#) + (b(3) * 16777216#)
getValueFFFF = s
End Function
Dim btr(0 To 3) As Byte
btr(0) = 170
btr(1) = 187
btr(2) = 204
btr(3) = 221
MsgBox getValueFFFF(btr())
End Sub
Function getValueFFFF(ByRef b() As Byte) As Double
Dim s As Double
s = b(0) + (b(1) * 256#) + (b(2) * 65536#) + (b(3) * 16777216#)
getValueFFFF = s
End Function
А какое максимальное и минимальное значение Double ?
Переменные типа Double (числа с плавающей точкой двойной точности) сохраняются как 64-разрядные (8-байтовые) числа с плавающей точкой стандарта IEEE в диапазоне от -1,79769313486232E308 до -4,94065645841247E-324 для отрицательных значений и от 4,94065645841247E-324 до 1,79769313486232E308 для положительных значений. Символом описания типа для типа Double служит символ (#).
Тип данных Single
Переменные типа Single (числа с плавающей точкой обычной точности) сохраняются как 32-разрядные (4-байтовые) числа с плавающей точкой стандарта IEEE в диапазоне от -3,402823E38 до -1,401298E-45 для отрицательных значений и от 1,401298E-45 до 3,402823E38 для положительных значений. Символом описания типа для типа Single служит восклицательный знак (!).
Тип данных Currency
Переменные типа Currency (денежные значения) сохраняются как 64-разрядные (8-байтовые) целые числа, которые после деления на 10000 дают число с фиксированной десятичной точкой с 15 разрядами в целой части и 4 разрядами в дробной. Такое представление позволяет отобразить числа в диапазоне от -922337203685477,5808 до 922337203685477,5807. Символом описания типа для типа Currency служит символ (@).
Тип данных Currency используется для денежных расчетов, а также для проведения расчетов с фиксированной десятичной точкой, в которых требуется обеспечить высокую точность.
Microsoft Office © help
Пасиба!! Будем знать.