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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.01.2010, 13:46   #1
Aent
Форумчанин
 
Аватар для Aent
 
Регистрация: 17.07.2009
Сообщений: 519
По умолчанию Ошибка в Excel 2010 beta

Нет, к сожалению это всё таки слишком сырая beta.
Попытка в VBA вычислить 256*256 вызывает Overflow
Можете попробовать сами в окне Immediate.
Сношу.
Версия Click-to-Run 14.0.4536.1000 32-х разрядная
Aent вне форума Ответить с цитированием
Старый 22.01.2010, 14:01   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,858
По умолчанию

Попробовал в 2003-м... узнал много нового

Мне теперь что, тоже Excel 2003 сносить из-за такой же ошибки?
Код:
debug.Print  256*256
EducatedFool вне форума Ответить с цитированием
Старый 22.01.2010, 16:26   #3
Aent
Форумчанин
 
Аватар для Aent
 
Регистрация: 17.07.2009
Сообщений: 519
По умолчанию

В 2007, кстати, без проблем.
EducatedFool, если бы только при вычислении константного
выпжения, я бы пережил. В принципе логично integer * integer.
Но в 2010 у меня и при вычислении выражения в макросе в коде x = CLng(Asc(s)) * 256^2 при х объявленном как long и Asc(s) = &H01 происходит OverFlow. Что то не то у них с приведением типов.

Последний раз редактировалось Aent; 22.01.2010 в 16:30.
Aent вне форума Ответить с цитированием
Старый 22.01.2010, 16:46   #4
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,858
По умолчанию

Самое интересное, что x = 256^2 не выдает ошибку, как и x = clng(1)*256*256
Проблема только с x = 256*256

Вот уж не думал, что такое возможно после 10 лет разработки VBA...
Теперь в особо важных расчётах буду всё умножать на clng(1)

Кстати, это уже обсуждалось.
Подробнее - здесь.

Последний раз редактировалось EducatedFool; 22.01.2010 в 16:52.
EducatedFool вне форума Ответить с цитированием
Старый 22.01.2010, 17:07   #5
Aent
Форумчанин
 
Аватар для Aent
 
Регистрация: 17.07.2009
Сообщений: 519
По умолчанию

Тем более занимательно, что в 2007 этой проблемы нет. Если бы нехорошие люди из MS не убрали бы половину HELP по
объектной модели ... При переходе к новому формату справки пропало описание кучи параметров.
Опять же макрорекордер сильно ужат
Кстати, в 2003 нормально работает debug.print 256& * 256&

Последний раз редактировалось Aent; 22.01.2010 в 19:43.
Aent вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Изменения в VBA Excel 2010 Aent Microsoft Office Excel 0 30.12.2009 19:05
Ошибка в Excel Tomoa Microsoft Office Excel 0 07.12.2009 23:53
Ошибка в Excel NSvirus Microsoft Office Excel 1 04.12.2009 05:28
Вышла ошибка при Инсталляций AlphaControls на Delphi 2010 Vill Общие вопросы Delphi 2 11.11.2009 17:52