Очень медленно загружается графика
Создается у меня в на листе куча графических объектов (300-500 групп). Группа - примерно 5-6
кружков, прямоугольников ...
И потом эта конструкция начинает медленно загружаться.
Причем на новом P4(Win2000 Xeon ОЗУ 4Гб) заметно медленее,чем на старом Р2 (Win98).
Эту ситуацию можно создать и просто дублируя
граф.объекты(например, круг). После нескольких сотен дублей замедление очевидно.
Не понятно, зачем при создании нового объекта EXCELю шерстить уже созданные.
И как с этим бороться? :-?
Такая вот проблемма.
Создается у меня в на листе куча графических объектов (300-500 групп). Группа - примерно 5-6
кружков, прямоугольников ...
И потом эта конструкция начинает медленно загружаться.
Причем на новом P4(Win2000 Xeon ОЗУ 4Гб) заметно медленее,чем на старом Р2 (Win98).
Эту ситуацию можно создать и просто дублируя
граф.объекты(например, круг). После нескольких сотен дублей замедление очевидно.
Не понятно, зачем при создании нового объекта EXCELю шерстить уже созданные.
И как с этим бороться? :-?
Я с такими кучами графики никогда не работал. Но есть некоторые общие факты, которые могут оказаться полезными.
Во-первых, многое зависит от версии Экселя. Давно подмечено, что 2000-й офис намного тормознее 97-го, а ХР - 2000-го. При этом новые возможности, появившиеся в этих версиях, на мой взгляд, совершенно не окупают такой повышенной требовательности к ресурсам железа.
Я вот потому и люблю нежно 97-й Эксель, что по соотношению возможности/ресурсы он недосягаем.
Наверняка у тебя на П2 стоит 97-й, а на П4 - 2000-й или ХР.
Второй момент - не забываешь ли ты делать
Application.ScreenUpdating = False перед тем как дорисовывать кучу графики? А то это очень сильно влияет на скорость...
Сейчас ради интереса запущу у себя (П3 - 1400) программульку с добавлением пары тысяч прямоугольничков... Посмотрим, что получится.
Я с такими кучами графики никогда не работал. Но есть некоторые общие факты, которые могут оказаться полезными.
Во-первых, многое зависит от версии Экселя. Давно подмечено, что 2000-й офис намного тормознее 97-го, а ХР - 2000-го. При этом новые возможности, появившиеся в этих версиях, на мой взгляд, совершенно не окупают такой повышенной требовательности к ресурсам железа.
Я вот потому и люблю нежно 97-й Эксель, что по соотношению возможности/ресурсы он недосягаем.
Наверняка у тебя на П2 стоит 97-й, а на П4 - 2000-й или ХР.
Второй момент - не забываешь ли ты делать
Application.ScreenUpdating = False перед тем как дорисовывать кучу графики? А то это очень сильно влияет на скорость...
Сейчас ради интереса запущу у себя (П3 - 1400) программульку с добавлением пары тысяч прямоугольничков... Посмотрим, что получится.
Спасибо за оперативный и фактический ответ.
Application.ScreenUpdating = False / True я делаю всегда, но это (тормоз) происходит в момент загрузки.
Делаю программу не для сэбе, а версиями Экселя на других ПК я не распоряжаюсь.
Спасибо за оперативный и фактический ответ.
Application.ScreenUpdating = False / True я делаю всегда, но это (тормоз) происходит в момент загрузки.
Делаю программу не для сэбе, а версиями Экселя на других ПК я не распоряжаюсь.
Ты знаешь, вот такая штука:
Dim i As Integer
For i = 1 To 1000
ActiveSheet.Shapes.AddShape msoShapeRectangle, 10 * i, 5 * i, 50, 70
Next i
End Sub
и на 97-м экселе, и на 2000-м у меня работает мгновенно даже без ScreenUpdating. И открываются файлы тоже без видимых трудностей.
Может, у тебя дело не в графике, а в чем-то еще? Нет ли там больших таблиц с формулами? А может, у тебя там подключены какие-нибудь надстройки или еще какие-нибудь внешние штуки (даже если они не используются - галочка стоит где-нибудь скромненько...). Антивирусы вроде Касперского тоже, кстати, бывают ОЧЕНЬ замедляют работу. В принципе, можешь кинуть сюда файлик, попробуем поглядеть...
Ты знаешь, вот такая штука:
Dim i As Integer
For i = 1 To 1000
ActiveSheet.Shapes.AddShape msoShapeRectangle, 10 * i, 5 * i, 50, 70
Next i
End Sub
и на 97-м экселе, и на 2000-м у меня работает мгновенно даже без ScreenUpdating. И открываются файлы тоже без видимых трудностей.
Может, у тебя дело не в графике, а в чем-то еще? Нет ли там больших таблиц с формулами? А может, у тебя там подключены какие-нибудь надстройки или еще какие-нибудь внешние штуки (даже если они не используются - галочка стоит где-нибудь скромненько...). Антивирусы вроде Касперского тоже, кстати, бывают ОЧЕНЬ замедляют работу. В принципе, можешь кинуть сюда файлик, попробуем поглядеть...
Твой примерчик у меня тоже летает, даже если увеличить на порядок число элементов.
Посылаю на пробу свой файл.
Твой примерчик у меня тоже летает, даже если увеличить на порядок число элементов.
Посылаю на пробу свой файл.
Попробовал я твой файл.
П3-1400 Эксель 97 - открылось мгновенно.
П4-2000 Эксель 2000 - тормозило при открытии.
Ну я же говорил... Чем дальше в лес, тем больше тормозов...
Помучаю немного еще на 2000-м. Может, что-нибудь получится...
Попробовал я твой файл.
П3-1400 Эксель 97 - открылось мгновенно.
П4-2000 Эксель 2000 - тормозило при открытии.
Ну я же говорил... Чем дальше в лес, тем больше тормозов...
Помучаю немного еще на 2000-м. Может, что-нибудь получится...
Причем эта штука тормозит в 2000-м не только при открытии файла, но и при изменении масштаба отображения (а в 97-м - все Ок). Вывод - году этак в 1999 программисты Билла Гейтса поменяли алгоритм отображения графических объектов. Как обычно - не в лучшую сторону... :-(
А что делать - не знаю пока. Попробовал разные фенечки - ничего не меняется...
И еще - если не секрет - а что это нарисовано? Уж больно прикольные картинки. Биатлон напоминают... :D
Это так обозначены скважины (ну, которые дырки в земле) в зависимости от их состояния.
Надписи по причинам секретности я убрал.
Если не трудно, сообщи конкретное время загрузки в разных системах. У меня на Р3(WIN-98 MSO-97) - 2сек, а на Р4(WIN-2000 MSO-20007) - 7сек.
Последний ПК к тому же 2-х процессорный Xeon, картинка в 150 Мб на нем (в PhotoPaint) открывается раз в 100 быстрее, чем на Р3.
Вот и противно. :x
Но в принципе не смертельно.
Понравилась твоя ф-ция Прописью. При случае куда-нибудь вставлю. :)
Программка которая 20 раз открывает-закрывает твой файл без всяких скринапдейтингов справляется за 7 секунд. Если открывать руками - явно меньше секунды, сколько точно - не знаю :)
P4-1800 (512Mb). Win XP Prof. Office 2000.
Один раз открыть твой файл руками:
Если окно Экселя абсолютно пустое - около 7 секунд.
Если там болтается по умолчанию пустая Book1 - 27 секунд (забавно, да?).