Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.08.2010, 05:55   #1
mire
 
Регистрация: 10.08.2010
Сообщений: 4
По умолчанию Не могу победить округления.EXCEL 2003 .VBA

Здравствуйте!
Нижеследующий код приводит к тому ,что переменная ,например, больше миллиона вдруг округляется в большую сторону.Как победить.
Код:
Sub Макрос1()
Dim i As Integer
Dim n As Integer
Dim Schet As Single
Dim SchetSum As Single
iRow = 5
SchetSum = 0
 For i = 1 To iRow
  Schet = ThisWorkbook.Sheets("лист1").Range("A" + CStr(i)).Value
         SchetSum = Round(SchetSum + Schet, 2) 'накапливаем сумму
         ThisWorkbook.Sheets("лист1").Range("B" + CStr(i)).Value = CStr(SchetSum)
 Next i
  
End Sub
Заранее спасибо.
Вложения
Тип файла: rar Пример.rar (7.5 Кб, 10 просмотров)
mire вне форума Ответить с цитированием
Старый 10.08.2010, 05:59   #2
mire
 
Регистрация: 10.08.2010
Сообщений: 4
По умолчанию

Забывл указать,что достаточно лишь одного слагаемого со значеним больше миллиона и двумя знаками после запятой,чтобы результат был неверен.
mire вне форума Ответить с цитированием
Старый 10.08.2010, 07:13   #3
Sparkman
220400
Форумчанин
 
Аватар для Sparkman
 
Регистрация: 21.05.2010
Сообщений: 726
По умолчанию

Попробуйте вместо типа Single использовать Double
Cерьёзной помощи не ждите - помогаю в перерывах на "перекур".
Не существует ничего невозможного для человека, который не собирается ничего делать сам.
Не учите человека, если вы не его учитель.
Sparkman вне форума Ответить с цитированием
Старый 10.08.2010, 16:17   #4
mire
 
Регистрация: 10.08.2010
Сообщений: 4
По умолчанию

Цитата:
Сообщение от Sparkman Посмотреть сообщение
Попробуйте вместо типа Single использовать Double
Спасибо,помогло.
mire вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Массивы в VBA Excel 2003 Anutohka Microsoft Office Excel 1 21.05.2010 18:51
Где взять русскую справку по VBA в Excel 2003? Алексей11111 Microsoft Office Excel 5 16.11.2009 02:56
Как запретить запуск программы на VBA Excel 2003 в Excel 2007 kovalevskivf Microsoft Office Excel 2 15.05.2009 16:47
VBA Excel 2003 tat-besidovska Microsoft Office Excel 17 07.06.2008 15:48
VBA Excel 2003 tat-besidovska Microsoft Office Excel 12 18.01.2008 10:54