Страницы: 1
RSS
ОКРУГЛЕНИЕ ЧИСЕЛ ДО ОПРЕДЕЛЕННОГО КОЛИЧЕСТВА ЗНАЧИМЫХ РАЗРЯДОВ
 
Как сразу округлить все числа, находящиеся в таблице(например:число столбцов :10, а число строк:50),до определенного количества значимых разрядов.  
Спасибо
 
цикл по всем ячейкам (я про макрос)  
 
что-то типа этого  
 
For Each iCell in Range("A1:D100")  
iCell.Value = Round(iCell,3)  
Next iCell  
 
P.S. код писал без проверки
 
если надо отбросить часть разрядов в дробной части, или оставить только целое (то есть отбросить всё после запятой), то можно выделив все нужные ячейки установить в свойствах нужный формат
 
{quote}{login=mazayZR}{date=09.10.2008 05:44}{thema=}{post}если надо отбросить часть разрядов в дробной части, или оставить только целое (то есть отбросить всё после запятой), то можно выделив все нужные ячейки установить в свойствах нужный формат{/post}{/quote}  
Нет,нужно,например число 1248 округлить до 1250.
 
{quote}{login=Pavel55}{date=09.10.2008 05:27}{thema=}{post}цикл по всем ячейкам (я про макрос)  
 
что-то типа этого  
 
For Each iCell in Range("A1:D100")  
iCell.Value = Round(iCell,3)  
Next iCell  
 
P.S. код писал без проверки{/post}{/quote}  
Попробовал, не получилось.Я, правда не очень силен в макросах.Спасибо.
 
СЕГЕЙ, а как это связано с округлением -?  
И сколько напримеров Вы сможете после ответа на этот вопрос еще выложить-?  
Можно сначала Ваше значение /100, округлить до 1 знака после запятой, а потом *100
 
---  
'Вот так честно округлит:  
Sub Округлить()  
Dim x  
On Error Resume Next  
For Each x In Range("A1:J50")  
 x.Value = CDbl(FormatNumber(x + 0, 0))  
Next  
End Sub  
 
' А здесь напомню, что Round() - это БАНКОВСКОЕ округление  
Sub CrazyRound()  
 Debug.Print Round(1.5, 0), Round(2.5, 0)  
End Sub  
 
Обычные рекомендации для ускорения пересчета, которые часто упоминались на форуме, не учтены для упрощения восприятия  
 
---  
ZVI
Страницы: 1
Читают тему
Наверх