Форум по VBA, Excel и Word

Word => Макросы в Word => Тема начата: Game от 08 сентября 2019, 13:48

Название: Word VBA Макросы: Запись числа в переменную с типом double не отбрасывая после запятой нули.
Отправлено: Game от 08 сентября 2019, 13:48
В тексте файла есть число 252525.00 и оно выделено. Если использовать вот такой макрос, то отбрасываются нули после точки, т.е. число становится не 252525,00, а 252525.
Каким образом можно оставить нули (не отбрасывать их)?

Пробовал Format и FormatNumber не помогло.

Макрос
Sub test()

    Dim Число_С_Точкой As Double

    Число_С_Точкой = Replace(Selection.Text, ".", ",") 'Записываем значение и меняем точку на запятую (иначе ошибка)
    MsgBox (Число_С_Точкой)

End Sub
[свернуть]
Название: Re: Word VBA Макросы: Запись числа в переменную с типом double не отбрасывая после запятой нули.
Отправлено: Администратор от 08 сентября 2019, 13:54
У переменной "Число_С_Точкой" тип данных "Double", в такую переменную нельзя записать дробное число, у которого только нули после запятой. Так запрограммировано.
Оформлять данные нужно перед вставкой (куда вы планировали эти данные вставить).
Или не используйте тип данных "Double", а используйте тип данных "String" или "Variant".
Название: Re: Word VBA Макросы: Запись числа в переменную с типом double не отбрасывая после запятой нули.
Отправлено: Game от 11 сентября 2019, 14:17
Спасибо. Я Вас понял.