Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Вычисление значение переменной по BETWEEN / 10 сообщений из 10, страница 1 из 1
01.04.2015, 09:29
    #38923346
intersk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисление значение переменной по BETWEEN
почему такой код дает ошибку на слове BETWEEN ? Оно не предназначено для VBA ?
Код: vbnet
1.
If Not Val(S) BETWEEN 1 and 31 Then...
...
Рейтинг: 0 / 0
01.04.2015, 09:58
    #38923382
Казанский
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисление значение переменной по BETWEEN
А Вы не пробовали поставить курсор в слово BETWEEN и нажать F1? Попробуйте так же сделать с If, Not...
Можно так
Код: vbnet
1.
If Val(S) < 1 or Val(S) > 31 Then...
...
Рейтинг: 0 / 0
01.04.2015, 10:06
    #38923396
intersk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисление значение переменной по BETWEEN
Казанский, так и сделал, а хочется проще )
...
Рейтинг: 0 / 0
01.04.2015, 10:07
    #38923400
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисление значение переменной по BETWEEN
interskпроще
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
Public Function Between(Val As Variant, From1 As Variant, To1 As Variant, Optional From2 As Variant, Optional To2 As Variant, Optional From3 As Variant, Optional To3 As Variant, Optional From4 As Variant, Optional To4 As Variant) As Boolean

If Val >= From1 And Val <= To1 Then Between = True: Exit Function
If Not (IsMissing(From2) Or IsMissing(To2)) Then If Val >= From2 And Val <= To2 Then Between = True: Exit Function
If Not (IsMissing(From3) Or IsMissing(To3)) Then If Val >= From3 And Val <= To3 Then Between = True: Exit Function
If Not (IsMissing(From4) Or IsMissing(To4)) Then If Val >= From4 And Val <= To4 Then Between = True: Exit Function
Between = False

End Function
...
Рейтинг: 0 / 0
01.04.2015, 10:25
    #38923446
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисление значение переменной по BETWEEN
intersk , какой нафиг BETWEEN, это не SQL же ж...

Shocker.Pro , тогда уж
Код: vbnet
1.
Public Function Between(Val As Variant, ParamArray Bounds As Variant) As Boolean
...
Рейтинг: 0 / 0
01.04.2015, 10:38
    #38923478
Like,
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисление значение переменной по BETWEEN
на правах прикола :)
Код: vbnet
1.
2.
3.
4.
5.
?Chr(2) Like "[" & Chr(1) & "-" & Chr(31) & "]"
True

?Chr(42) Like "[" & Chr(1) & "-" & Chr(31) & "]"
False
...
Рейтинг: 0 / 0
01.04.2015, 10:40
    #38923483
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисление значение переменной по BETWEEN
Akina Shocker.Pro , тогда ужне интеллисенсно
...
Рейтинг: 0 / 0
02.04.2015, 21:13
    #38925651
intersk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисление значение переменной по BETWEEN
как через Like тогда сделать сравнение?

If Not Val(S) Like ....
...
Рейтинг: 0 / 0
03.04.2015, 00:23
    #38925747
Казанский
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисление значение переменной по BETWEEN
intersk, а чем не устраивает вариант с Or?
По длине текста даже меньше, чем гипотетический вариант в BETWEEN.
Если смущает повторный вызов функции - присвойте значение Val(S) переменной.
Возможно, это часть проверки на то, что введена правильная дата? Но лучше проверять isdate("m/d/y"), т.к. допустимое число дней зависит от месяца и года.
...
Рейтинг: 0 / 0
03.04.2015, 09:20
    #38925873
intersk
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисление значение переменной по BETWEEN
Казанскийintersk, а чем не устраивает вариант с Or?
По длине текста даже меньше, чем гипотетический вариант в BETWEEN.
Если смущает повторный вызов функции - присвойте значение Val(S) переменной.
Возможно, это часть проверки на то, что введена правильная дата? Но лучше проверять isdate("m/d/y"), т.к. допустимое число дней зависит от месяца и года.

так и сделал уже ) просто в условие таблицы between можно вставить а в VBA нет ...
за подсказку спасибо но у меня число даты не привязано к конкретному месяцу
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Вычисление значение переменной по BETWEEN / 10 сообщений из 10, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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