Как показать условие: "Если строка не содержит цифр?&qu

Программирование на Visual Basic for Applications
sonata
Постоялец
Постоялец
 
Сообщения: 321
Зарегистрирован: 31.07.2002 (Ср) 13:18
Откуда: Russia

Как показать условие: "Если строка не содержит цифр?&qu

Сообщение sonata » 21.04.2003 (Пн) 11:40

Как показать условие: "Если строка не содержит цифр?"

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 21.04.2003 (Пн) 11:41

То есть? Что имеется в виду?

sonata
Постоялец
Постоялец
 
Сообщения: 321
Зарегистрирован: 31.07.2002 (Ср) 13:18
Откуда: Russia

Сообщение sonata » 21.04.2003 (Пн) 11:50

То и имеется в виду.
Если строка="Альянс" то условие=true
Если строка="дог.123" то условие=false

sonata
Постоялец
Постоялец
 
Сообщения: 321
Зарегистрирован: 31.07.2002 (Ср) 13:18
Откуда: Russia

Сообщение sonata » 21.04.2003 (Пн) 11:51

Вопрос в том, как написать это условие?

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 21.04.2003 (Пн) 11:52

if not isnumeric(mystring) then

так по моему

sonata
Постоялец
Постоялец
 
Сообщения: 321
Зарегистрирован: 31.07.2002 (Ср) 13:18
Откуда: Russia

Сообщение sonata » 21.04.2003 (Пн) 12:01

Чувствую, что не так...
Это будет false в любом случае...

Fuzzy
Обычный пользователь
Обычный пользователь
 
Сообщения: 60
Зарегистрирован: 03.12.2002 (Вт) 12:33

Сообщение Fuzzy » 21.04.2003 (Пн) 12:16

можно воспользоваться like
Код: Выделить всё
x like "*[0-9]*"

вернёт true, если х содержит цифры

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 21.04.2003 (Пн) 12:20

Читаем хелп :evil:



IsNumeric Function



Returns a Boolean value indicating whether an expression can be evaluated as a number.



IsNumeric(expression)



The expression argument can be any expression.



Remarks

IsNumeric returns True if the entire expression is recognized as a number; otherwise, it returns False. IsNumeric returns False if expression is a date expression.



The following example uses the IsNumeric function to determine whether a variable can be evaluated as a number:



Dim MyVar, MyCheck

MyVar = 53 ' Assign a value.

MyCheck = IsNumeric(MyVar) ' Returns True.

MyVar = "459.95" ' Assign a value.

MyCheck = IsNumeric(MyVar) ' Returns True.

MyVar = "45 Help" ' Assign a value.

MyCheck = IsNumeric(MyVar) ' Returns False.



и что из вышесказанного следует? То что IsNumeric вернет то именно что надо.

corgi
ToyMan
ToyMan
 
Сообщения: 1367
Зарегистрирован: 01.10.2002 (Вт) 9:59
Откуда: Россия, Москва

Сообщение corgi » 21.04.2003 (Пн) 12:27

строка "aw12" не является числом но содержит цифры так что isnumeric не подойдет
сам же написал
MyVar = "45 Help" ' Assign a value.
MyCheck = IsNumeric(MyVar) ' Returns False.
Ничто так не ограничивает полёт мысли программиста, как компилятор

Fuzzy
Обычный пользователь
Обычный пользователь
 
Сообщения: 60
Зарегистрирован: 03.12.2002 (Вт) 12:33

Сообщение Fuzzy » 21.04.2003 (Пн) 12:27

Короче, like прекрасно решает эту проблему


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 17

    TopList