Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
RSS
Сравнение числа со множеством
 
Добрый день!

Есть несколько чисел: 5,7,10,14,16 и т.д, Есть ли возможность записать условие IF THEN,, где значение сравнивается с данным множеством?
Хотелось бы избежать повторения OR.
Изменено: syt navy - 4 Дек 2018 14:02:00
 
Добрый. Это смотря как числа стоят (в одной ячейке, в нескольких, каждое в своей). Да и числа ли это (а то вдруг, строковые значения?). Покажите в файле что есть, что нужно.
Кому решение нужно - тот пример и рисует. (Это не призыв, это, - констатация).
 
syt navy, не первый день на форуме - где файл-пример?
 
И какой результат должен быть?
{5,7,10,14,16}>7 = TRUE
или
{5,7,10,14,16}>7 = {FALSE,FALSE,TRUE,TRUE,TRUE}
или
{5,7,10,14,16}>7  = 10
или
{5,7,10,14,16}>7 = ???
Я не волшебник, я только учусь.
 
Это число - номер колонки в таблице, в которой изменяется значение
Код
For Each oCell In Target
    If oCell.Column = 5 ...... THEN
           действия
    Else
           действия
    End if
Next oCell
Был Select Case, но не очень удобно
Изменено: syt navy - 4 Дек 2018 14:20:37
 
syt navy, код следует оформлять соответствующим тегом. Ищите такую кнопку (см. скрин) и исправьте своё сообщение.
Цитата
Юрий М написал:
где файл-пример?
Тег VBA.jpg (19.2 КБ)
 
Цитата
syt navy написал:
Был Select Case, но не очень удобно
А чем не удобно?
"Все гениальное просто, а все простое гениально!!!"
 
А вернуть-то оно что должно? покажите, что ли, Select Case, который оно призвано заменить. (и код тегами оформите)
 
Если  номер колонки соответствует одному из чисел множества, выполняется пакет операций. Т.е. для каждого CASE прописывать один и тот же пакет не комильфо. В таблице три десятка колонок. Изменения в десятке из них вызывают пакет вычислений, изменения в остальных вызывают другие действия.
Просто хотел узнать, можно ли записать что-то типа
If oCell.Column = {5,7,10,14,16....} Then.....
?
 
Для примера вот использование Select Case, исходя из того как я понял ваш пример
Код
Sub test()
    Dim i&
    i = InputBox("Значение", Default:="число")
    Select Case i
        Case 1, 4, 6 To 9: MsgBox "Совпало"
        Case Else
            MsgBox "Нет данных"
    End Select
End Sub
Изменено: Nordheim - 4 Дек 2018 15:15:00
"Все гениальное просто, а все простое гениально!!!"
 
Спасибо. Вполне устраивает.
Страницы: 1
Читают тему (гостей: 1)
Наверх