Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
RSS
Проверка столбца на диапазон чисел
 
Здравствуйте!
Я не селен в макросах! Искал в инете, ни чего не нашел похожего.
Задача такая:
В столбце "A" стоят цифры с "1" до "50" они могут дублироваться.
Нужен макрос, который бы проверил этот столбец с A16 и до последний заполненной ячейки на наличие всех цифр, если какая - нибудь цифра отсутствует или больше 50, то сообщение "всё плохо" ну если все цифры есть, то "всё хорошо".
Зарание всем спасибо за потраченное время!
 
Артём Федотенко, вам макрос тоже на словах написать? это я о правилах о файле примере- исходных данных и показанным в нем желаемым результатом
Код
Sub neponyatnozachem()
Dim i As Long, lr As Long, col As New Collection
lr = Cells(Rows.Count, 1).End(xlUp).Row
For i = 16 To lr
On Error Resume Next
    If Cells(i, 1) <= 50 Then col.Add Cells(i, 1).Value, CStr(Cells(i, 1).Value)
Next i
If col.Count = 50 Then
    MsgBox "Все хорошо"
Else
    MsgBox "Все плохо"
End If
End Sub
Изменено: Mershik - 29 окт 2020 09:50:13
Не бойтесь совершенства. Вам его не достичь.
 
Mershik, Извиняюсь, думал понятно объяснил, вот пример с вложенным вашим макросом,

В столбце "А" присутствуют цифры больше 50, сообщение выдает что "всё хорошо"
на отсутствие какой нибудь цифры сообщение правильно выдает.
 
Артём Федотенко, ну переделайте макрос) так как сейчас понятней не стало
Код
Sub neponyatnozachem()
Dim i As Long, lr As Long, col As New Collection, col2 As New Collection
lr = Cells(Rows.Count, 1).End(xlUp).Row
For i = 16 To lr
On Error Resume Next
    If Cells(i, 1) <= 50 Then col.Add Cells(i, 1).Value, CStr(Cells(i, 1).Value)
    If Cells(i, 1) > 50 Then col2.Add Cells(i, 1).Value, CStr(Cells(i, 1).Value)
Next i
If col.Count = 50 And col2.Count = 0 Then
    MsgBox "Все хорошо"
Else
    MsgBox "Все плохо"
End If
End Sub

Изменено: Mershik - 29 окт 2020 10:13:16
Не бойтесь совершенства. Вам его не достичь.
 
А если так массивно
=IF((MAX(A:A)<>50)-SUM(-ISNA(MATCH(ROW(1:50);A:A;)));"Все плохо";"Все хорошо")
По вопросам из тем форума, личку не читаю.
 
Mershik, Спасибо!!!

Этот макрос мне помог.
Страницы: 1
Читают тему (гостей: 1)
Наверх