Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

ScreenUpdating - обновление экрана

Читайте также:
  1. Блокирование масштаба на видовых экранах листа
  2. ВОЗОБНОВЛЕНИЕ ОТНОШЕНИЙ РОДСТВЕННЫХ ДУШ
  3. Возобновление прерванных действий
  4. Вопрос № 21. Новые и вновь открывшиеся обстоятельства. Возобновление уголовного дела ввиду новых и вновь открывшихся обстоятельств.
  5. Джера (йер) — управление погодой. Постепенные пере­мены. Обновление.
  6. Запросы на обновление записей

13-06-Application ScreenUpdating.xlsm - пример к п. 13.4.4.

Позволяет включать (присвоением свойству True) и отключать (присвоением False) обновление экрана. Имеет смысл отключить обновление экрана перед теми частями программы, которые интенсивно пользуются данными на листе. Благодаря тому, что системные ресурсы не будут тратиться на обновление экрана, программа будет работать быстрее. Этот метод весьма актуален, так как MS Excel часто используют для проведения ресурсоемких расчетов.

Практика показывает, что если программа интенсивно использует вывод на экран в процессе работы, если она изменяет данные, которые участвуют в расчете формул, расположенных на листе, то отключение вывода может ускорить работу в 3-10 раз.

Например, ниже (листинг 13.8.) приведен код, который два раза повторяет процедуру 100-кратного вывода на экран 400 целых случайных чисел и выводит время, требующееся для выполнения этих действий с обновлением экрана и без него.

'Массив для значений времени

Dim WorkTime(2)

'Время начала теста

Dim StartTime

'Время окончания теста

Dim StopTime

'Включаем обновление

Application.ScreenUpdating = True

For i = 1 To 2

'Во втором проходе цикла

'выключим обновление

If i = 2 Then _

Application.ScreenUpdating = False

End If

'Запишем текущее время

StartTime = Time

'Перейдем на лист для теста

Worksheets("Тест скорости").Activate

'Выведем 100 раз целые случайные

'числа в область 20х20

For y = 1 To 100

For p = 1 To 20

For j = 1 To 20

ActiveSheet.Cells(p, j) = _

Int(Rnd * 100)

Next j

Next p

Next y

'Запишем время окончания

StopTime = Time

'Для корректного представления

'в виде секунд

WorkTime(i) = _

(StopTime - StartTime) * 24 * 60 * 60

Next i

Application.ScreenUpdating = True

MsgBox "Время выполнения программы." & Chr(13) + _

"При включенном обновлении: " & _

WorkTime(1) & " сек." & Chr(13) & _

"При выключенном обновлении: " & _

WorkTime(2) & " сек."


Дата добавления: 2015-07-25; просмотров: 110 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
SendKeys - имитация нажатий на клавиши клавиатуры| Листинг 13.9. Объявляем новый объект типа Excel.Application с событиями (html, txt)

mybiblioteka.su - 2015-2024 год. (0.009 сек.)