В таблице Word округлить числа до двух знаков

Весь MS Office, программирование на Visual Basic for Applications и MS VB

Модератор: Naeel Maqsudov

Ответить
lebmax
Сообщения: 14
Зарегистрирован: 21 сен 2007, 09:45

Подскажите пожалуйства как в Word при помощи макроса во всей таблице округлить числа до двух знаков после запятой, или хотябы стереть последний знак
Genyaa
Сообщения: 310
Зарегистрирован: 11 окт 2006, 17:24
Откуда: Moscow
Контактная информация:

Округлит числовые значения выделенных ячеек в таблице Word.

Код: Выделить всё

Sub nnn()
    Dim cc As Cell
    For Each cc In Selection.Range.Cells
        cc.Range.Text = Round(Val(cc.Range.Text), 2)
    Next cc
End Sub
Всякое решение плодит новые проблемы.
lebmax
Сообщения: 14
Зарегистрирован: 21 сен 2007, 09:45

Большое спасибо, то что надо, я давно о б этом мечтал
lebmax
Сообщения: 14
Зарегистрирован: 21 сен 2007, 09:45

надо чтобы количество знаков после запятной было два, а код делает-если ноль округляет дальше
Аватара пользователя
EducatedFool
Сообщения: 197
Зарегистрирован: 06 апр 2008, 14:03
Откуда: Россия, Урал
Контактная информация:

Чтобы всегда присутствовали 2 знака после запятой, используйте такой вариант:

Код: Выделить всё

Sub nnn2()
    For Each cc In Selection.Range.Cells
        v = Val(Replace(cc.Range.Text, ",", "."))
        cc.Range.Text = FormatNumber(Round(v, 2), 2)
    Next cc
End Sub
Или, если просто надо округлить, то такой:

Код: Выделить всё

Sub nnn()
    Dim cc As Cell
    For Each cc In Selection.Range.Cells
        v = Val(Replace(cc.Range.Text, ",", "."))
        cc.Range.Text = Round(v, 2)
    Next cc
End Sub
lebmax
Сообщения: 14
Зарегистрирован: 21 сен 2007, 09:45

Спасибо большое
Аватара пользователя
AlexEL
Сообщения: 24
Зарегистрирован: 23 авг 2008, 06:44
Контактная информация:

В пакете "Методичка" есть такой макрос. Скачать можно тут http://alex-mail.at.tut.by/
Ответить