Здравствуйте! Столкнулся для себя с нерешаемой проблемой. Дело в том, что числа, которые отображаются и имеют значения в эксель, отображаются не полностью, т.е. видимо имеют значение "с конца" в единицу. Для понимание прикладываю пример. Понять, что эти числа не ограничиваются десятками и сотнями, возможно только при суммировании. Пытался идти разными способами и через блокнот, и через формулу округления и через поиск значений содержащие эти знаки, через разбитие на массивы и их суммирование. Конечной попыткой был макрос (я не про, но попытался), но он тоже не помог, суммы все равно не считаются до сотых. Может кто-нибудь поможет с решением данной задачи? Макрос, который не смог... [vba]
Код
Sub SHRT() Dim LastRow As Long LastRow = ThisWorkbook.Worksheets(1).Cells(Rows.Count, 1).End(xlUp).Row Dim i As Long Dim Bc As Double For i = 1 To (LastRow - 1) Bc = Range("A" & (i + 1)) ThisWorkbook.Worksheets(1).Range("B" & (i + 1)) = CInt(Int(Bc * 100)) / 100 Next i End Sub
[/vba] Спасибо.
Здравствуйте! Столкнулся для себя с нерешаемой проблемой. Дело в том, что числа, которые отображаются и имеют значения в эксель, отображаются не полностью, т.е. видимо имеют значение "с конца" в единицу. Для понимание прикладываю пример. Понять, что эти числа не ограничиваются десятками и сотнями, возможно только при суммировании. Пытался идти разными способами и через блокнот, и через формулу округления и через поиск значений содержащие эти знаки, через разбитие на массивы и их суммирование. Конечной попыткой был макрос (я не про, но попытался), но он тоже не помог, суммы все равно не считаются до сотых. Может кто-нибудь поможет с решением данной задачи? Макрос, который не смог... [vba]
Код
Sub SHRT() Dim LastRow As Long LastRow = ThisWorkbook.Worksheets(1).Cells(Rows.Count, 1).End(xlUp).Row Dim i As Long Dim Bc As Double For i = 1 To (LastRow - 1) Bc = Range("A" & (i + 1)) ThisWorkbook.Worksheets(1).Range("B" & (i + 1)) = CInt(Int(Bc * 100)) / 100 Next i End Sub