Функция StrFormatByteSize

Declare Function StrFormatByteSize _
  Lib "shlwapi" Alias "StrFormatByteSizeA" _
  (ByVal dw As Long, ByVal pszBuf As String, _
  ByVal cchbuf As Long) As Long

StrFormatByteSize преобразует число байтов в символьную строку типа "1,25 KB" или "1,14 MB" в зависимости от размера.

Возвращаемое значение

Функция возвращает адрес конвертированной строки или 0, если конвертация не удалась

Параметры

dw
Числовое значение для конвертации
pszBuf
Указатель на полученную строку
cchBuf
Размер pszBuf в символах

Пример

Public Function FormatKB(ByVal Amount As Long) As String
  Dim Buffer As String, i%
  Buffer = Space$(255) ' резервируем буфер
  Call StrFormatByteSize(Amount, Buffer, Len(Buffer))
  i = InStr(Buffer, vbNullChar)
  If i > 1 Then FormatKB = Left$(Buffer, i - 1)
End Function

Print FormatKB(Text1.Text)

Категория

Shlwapi