Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.06.2010, 12:16   #1
kipish_lp
Форумчанин
 
Регистрация: 25.11.2009
Сообщений: 113
По умолчанию Значение содержится в массиве

Здравствуйте! Подскажите, пожалуйста, как можно записать:
если значение ячейки "А1" не содержится в массиве "B1:B10", то...
Или наоборот, содержится, как удобней? Я знаю как равно, или не равно. А вот как содержится или не содержится...
kipish_lp вне форума Ответить с цитированием
Старый 18.06.2010, 12:35   #2
Serge 007
Участник клуба
 
Аватар для Serge 007
 
Регистрация: 15.12.2009
Сообщений: 1,448
По умолчанию

Цитата:
Сообщение от kipish_lp Посмотреть сообщение
Здравствуйте! Подскажите, пожалуйста, как можно записать:
если значение ячейки "А1" не содержится в массиве "B1:B10", то...
Или наоборот, содержится, как удобней? Я знаю как равно, или не равно. А вот как содержится или не содержится...
Да так же, равно, не равно...

А что получить-то в итоге надо?
Бесплатная помощь: www.excelworld.ru
Платная помощь: serge_007.planetaexcel@mail.ru
https://yoomoney.ru: 41001419691823
Serge 007 вне форума Ответить с цитированием
Старый 18.06.2010, 12:41   #3
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Вот вам 2 варианта:

Код:
Sub test1()
    ' если значение ячейки "А1" содержится в массиве "B1:B10"
    If [or(B1:B10=A1)] Then
        MsgBox """А1"" содержится в массиве ""B1:B10"""
    Else
        MsgBox """А1"" НЕ содержится в массиве ""B1:B10"""
    End If
End Sub

Sub test2()
    ' если значение ячейки "А1" не содержится в массиве "B1:B10"
    If [B1:B10].Find([A1], , , xlWhole) Is Nothing Then
        MsgBox """А1"" НЕ содержится в массиве ""B1:B10"""
    Else
        MsgBox """А1"" содержится в массиве ""B1:B10"""
    End If
End Sub

Последний раз редактировалось EducatedFool; 18.06.2010 в 12:43.
EducatedFool вне форума Ответить с цитированием
Старый 18.06.2010, 13:39   #4
vikttur
Участник клуба
 
Регистрация: 16.05.2010
Сообщений: 1,249
По умолчанию

СЧЕТЕСЛИ()
Например:
=ЕСЛИ(СЧЕТЕСЛИ(B1:B10;A1);условиеНЕ равноНУЛЮ;условиеРАВНОнулю)
vikttur вне форума Ответить с цитированием
Старый 19.06.2010, 11:31   #5
kipish_lp
Форумчанин
 
Регистрация: 25.11.2009
Сообщений: 113
По умолчанию

Цитата:
А что получить-то в итоге надо?
Да надо, чтобы на листе в определенной колонке если значение не содержится в "справочнике", то его удалить.
Как формулой-то, знаю, просто это оч. много данных, а формулы в ячейках долго рассчитываются. Вот и хотелось макросом. Макрос есть, а условия нет. Ну, теперь есть, спасибо.
kipish_lp вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Найти значение на другом листе и подставить значение следующей ячейки ElenaNTro Microsoft Office Excel 12 11.02.2019 12:44
Задан текстовый файл в строках которого через пробел содержится информация согласно задания. Natasha162 Помощь студентам 3 12.01.2010 18:19
Подстрока содержится в строке motorway SQL, базы данных 1 05.10.2009 19:46
Цитаты в массиве Insainer Microsoft Office Excel 4 24.08.2009 16:31
проверить, содержится ли строка в массиве aurora_87 Общие вопросы C/C++ 6 28.12.2008 01:25