VBA - [решено] Отображение больших чисел и приведение типов

Ответить
Аватара пользователя
DaniilS

VBA - [решено] Отображение больших чисел и приведение типов

Сообщение DaniilS »

Здравствуйте.

Пробую написать калькулятор и столкнулся с такой проблемой:

использую тип Double, если в числе более 15-и разрядов оно начинает отображаться в научном варианте т.е. 2,2Е5, приведение к Text ни чего не меняет, при приведении его к Decimal старшие 15 разрядов значащие остальные превращаются в нули, вроде этого 222222222222222000000000000.

Помогите, плиз, решить проблему с отображением или приведением.
Аватара пользователя
Coutty

Re: VBA - [решено] Отображение больших чисел и приведение типов

Сообщение Coutty »

Я не знаю - там есть структуры и классы? Можно попробовать хранить младшие 8 разрядов в одной части переменной, вторые восемь - в другой, третьи - в третьей, а само число в текстовом виде (bigVar.a8 = 31254324; bigVar.a16 = 83701847; bigVar.a24 = 57; bigVar.value = 578370184731254324). Соответственно написать обработчики событий для этих больших чисел. Вместо структур и обычные переменные можно использовать, и массивы.
Аватара пользователя
DaniilS

Re: VBA - [решено] Отображение больших чисел и приведение типов

Сообщение DaniilS »

Спасибо за помощь.

Надо лучше работать со справкой. Изображение


Цитата:



Следует помнить, что с помощью числа с плавающей запятой можно аппроксимировать только десятичные числа, а точность, с которой аппроксимируется десятичное число, зависит от точности числа с плавающей запятой. По умолчанию значение Double содержит 15 десятичных цифр, хотя во внутреннем представлении может использоваться до 17 цифр.
Ответить

Вернуться в «Программирование и базы данных»