Форум программистов, компьютерный форум, киберфорум
MS Office Excel
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 13.09.2019
Сообщений: 44
1

Почему макрос так медленно работает? Как ускорить?

24.06.2020, 09:58. Просмотров 134. Ответов 2

6000 строк сделал примерно за 5 минут
почему макрос так долго всё делает?
как ускорить?

Кликните здесь для просмотра всего текста
Visual Basic
1
2
3
4
5
6
7
Sub Copy2()
Application.ScreenUpdating = False
For j = 1 To Sheets("ÁÄ").Cells(Rows.Count, 8).End(xlUp).Row
    Sheets("ÁÄxy").Cells(j, 9).Value = Sheets("ÁÄ").Cells(j, 8).Value
Next
Application.ScreenUpdating = True
End Sub


Добавлено через 9 минут
6000 строк сделал примерно за 5 минут
почему макрос так долго всё делает?
как ускорить работу цикла?

P. S.
ну я знаю что можно скопировать всё сразу
Кликните здесь для просмотра всего текста
Visual Basic
1
2
Range(sh2.Cells(1, i), sh2.Cells(sh1.Columns(1).End(xlDown).Row, i)).Value = _
Range(sh1.Cells(1, i), sh1.Cells(sh1.Columns(1).End(xlDown).Row, i)).Value


просто я удивился что циклы такие медленные


Кликните здесь для просмотра всего текста
Visual Basic
1
2
3
4
5
6
7
Sub Copy2()
Application.ScreenUpdating = False
For j = 1 To Sheets("ÁÄ").Cells(Rows.Count, 8).End(xlUp).Row
    Sheets("ÁÄxy").Cells(j, 9).Value = Sheets("ÁÄ").Cells(j, 8).Value
Next
Application.ScreenUpdating = True
End Sub
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.06.2020, 09:58
Ответы с готовыми решениями:

Почему так медленно работает SetPixel?
Видел похожие темы но ответа не нашел. Не могу понять почему так медленно работает Setpixel....

Почему запрос работает так медленно?
Привет. Появилась проблема с запросом. Уже второй час пытаюсь решить, начинает крыша ехать(((. Суть...

Почему эта программа работает так медленно?
Раньше работала нормально, но у меня вырубился комп изменения не сохранились и я не помню как было....

Решето Эратосфена (сегмент): медленно работает - как можно ускорить?
Подсчёт числа простых чисел в диапазоне от "from" до "to" typedef UINT64 Number; __device__...

2
1143 / 807 / 400
Регистрация: 23.03.2015
Сообщений: 2,735
24.06.2020, 12:16 2
GreenJoy,
Цикл по своей сути- не медленнный.

Задержка идет за счет "метания" с листа на лист.
Попробуйте скинуть в массив и пройтись циклом в массиве- будет быстро...
1
Модератор
Эксперт MS Access
9827 / 3867 / 624
Регистрация: 07.08.2010
Сообщений: 10,971
Записей в блоге: 2
24.06.2020, 12:55 3
GreenJoy,
время выполнения 1 секунда на 6000 строк
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Sub Copy2m()
Dim ws1 As Worksheet
Dim ws2 As Worksheet
Dim j As Long, jmax As Long, dt
dt = Timer
Application.ScreenUpdating = False
Set ws1 = Sheets("AA")
ws1.Activate
Set ws2 = Sheets("AAxy")
jmax = ws1.Cells(Rows.Count, 1).End(xlUp).Row
For j = 1 To jmax
    ws2.Cells(j, 9).Value = ws1.Cells(j, 8).Value
Next
Application.ScreenUpdating = True
set ws1=nothing
set ws2=nothing
 
Debug.Print jmax, (Timer - dt) \ 1 & " sec", "list="; ws1.Name
End Sub
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.06.2020, 12:55

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Почему в ARCHIVELOG так медленно выполняется DDL?
Здравствуйте, у меня проблема. Включаю режим ARCHIVELOG и Oracle начинает жутко тормозить при...

Почему функции VBA так медленно работают?
Привет всем, Еще вопрос. Я создал в VBA функцию, которая по сложной формуле считает не важно...

Слишком медленно парсится. можна ли как то ускорить
Всем привет. Выдираю вообщем с html странички по тегам информацию которую мне нужно.. вроде всё...

Почему на флеш-накопитель так медленно производится запись?
Почему на флеш-накопитель так медленно производится запись? в данном случае - один видеофайл.

Очень медленно скачивает страницу (TIdHTTP). Как ускорить?
Скачивает страницу с любого сайта за 2-4 секунды. При этом браузер (Google Chrome) за...

Почему медленно работает setInterval?
Делаю движение картинки влево-вправо (меняю left с 30px на 10px, потом обратно). подскажите,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.