powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / как работает temp?
10 сообщений из 10, страница 1 из 1
как работает temp?
    #36905074
Shpr0TinG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите пожауйста как в этом макросе работает temp?


Sub Шаг5()
Dim i As Long, x As Range, temp: temp = [A2]: Application.ScreenUpdating = False
For i = 3 To Cells(Rows.Count, 1).End(xlUp).Row
If Cells(i, 1) <> "" Then If Cells(i, 1) = temp Then Cells(i, 1).ClearContents Else temp = Cells(i, 1)
Next
End Sub
...
Рейтинг: 0 / 0
как работает temp?
    #36905096
fortik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
используется для удаления повторяющихся значений
сравниваем temp с другими непустыми ячейками.
...
Рейтинг: 0 / 0
как работает temp?
    #36905098
fortik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в окне locals всегда можно посмотреть значение temp
...
Рейтинг: 0 / 0
как работает temp?
    #36905151
Shpr0TinG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
fortik, ок, еще вопрос, мне непонятно вот это что делает:

temp: temp = [A2]: Application.ScreenUpdating = False

и вот это что делает:

For i = 3 To Cells(Rows.Count, 1).End(xlUp).Row - в частности это
...
Рейтинг: 0 / 0
как работает temp?
    #36905161
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shpr0TinG,

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Sub step5()
Dim i As Long, x As Range, temp
temp = Cells( 1 ,  2 )
Application.ScreenUpdating = False
'поиск повторов по столбцу 1 начиная со строки 3
For i =  3  To Cells(Rows.Count,  1 ).End(xlUp).Row
If Cells(i,  1 ) <> "" Then
If Cells(i,  1 ) = temp Then
Cells(i,  1 ).ClearContents
Else
temp = Cells(i,  1 )
End If
End If
Next
End Sub

...
Рейтинг: 0 / 0
как работает temp?
    #36905180
fortik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
temp=[a2] - значение ячейки [a2]
application.screenupdating = false - отключает обновление экрана, макрос работает быстрее
Cells(Rows.Count, 1).End(xlUp).Row - номер последней использованной строчки
...
Рейтинг: 0 / 0
как работает temp?
    #36905187
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shpr0TinGfortik, ок, еще вопрос, мне непонятно вот это что делает:

temp: temp = [A2]: Application.ScreenUpdating = False

и вот это что делает:

For i = 3 To Cells(Rows.Count, 1).End(xlUp).Row - в частности этоцикл от тройки до номера последней строки первого столбца

можно написать через lastcell, если не ошибаюсь. на форуме много примеров вычисления послндней строки массива
...
Рейтинг: 0 / 0
как работает temp?
    #36905205
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на 1 вопрос:
думается, эта запись аналогична temp="$A$2"
т.е. переменной temp присваивается значение ячейки A2

скорее, temp сужит для удаления из массива значений ячейки A2, а не просто повторяющихся...
ps не вижу смысла устраивать переборку циклом, когда можно это сделать встроенными функциями excel.
...
Рейтинг: 0 / 0
как работает temp?
    #36905210
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
извиняюсь, про temp - чушь написал в предыдущем посте: код до конца не дочитал.
...
Рейтинг: 0 / 0
как работает temp?
    #36905308
Shpr0TinG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ок, спасибо всем, очень помогли.
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / как работает temp?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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