Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Скорость макроса / 5 сообщений из 5, страница 1 из 1
10.01.2006, 15:15:31
    #33474465
Ekonomova
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Скорость макроса
Всем привет! Вопрос такой. Есть лист (где-то около 500 строк и 50 столбцов). Половина ячеек, выделенные цветом(19 и 36) заполняются данными. Пишу макрос (удалить данные из этих ячеек). Что не так делаю, ну очень уж медленно работает...

Dim n, m As Integer
For n = 1 To 370
For m = 1 To 50
If Cells(n, m).Interior.ColorIndex = 19 Then
Cells(n, m).Select
Selection.ClearContents
End If
If Cells(n, m).Interior.ColorIndex = 36 Then
Cells(n, m).Select
Selection.ClearContents
End If
Next
Next
End If
...
Рейтинг: 0 / 0
10.01.2006, 15:31:21
    #33474521
SmeL_md
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Скорость макроса
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Dim n, m As Integer
For n =  1  To  370 
 For m =  1  To  50 
  If Cells(n, m).Interior.ColorIndex =  19  or Cells(n, m).Interior.ColorIndex =  36  Then
   Cells(n, m)=""
  End If
 Next
Next
чуть быстрее будет
...
Рейтинг: 0 / 0
10.01.2006, 15:40:22
    #33474559
Ekonomova
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Скорость макроса
Спасибо, а еще вопросик можно. Как сделать, чтобы в процессе работы макроса отображались часики или что-то еще, чтобы было понятно, что макрос работает.
...
Рейтинг: 0 / 0
10.01.2006, 15:58:00
    #33474615
SmeL_md
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Скорость макроса
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Dim n, m As Integer
For n =  1  To  370 
 For m =  1  To  50 
  If Cells(n, m).Interior.ColorIndex =  19  or Cells(n, m).Interior.ColorIndex =  36  Then
   Cells(n, m)=""
  End If
 Next
ProgressBar1.Value = n/ 370 
Next
Прогрес бар найдете в ActiveX
...
Рейтинг: 0 / 0
10.01.2006, 16:08:36
    #33474659
Скорость макроса
Код: plaintext
1.
2.
Application.Cursor = xlWait
...
Application.Cursor = xlDefault
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Скорость макроса / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]