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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.06.2012, 23:45   #1
raytek
Пользователь
 
Регистрация: 07.11.2011
Сообщений: 67
По умолчанию Выражение Like в VBA

Доброго времени суток! Помогите пожайлуста впихнуть выражение Like в VBA. Необходимо реагировать на записи содержащие букву "Н"

Попробовал так:

If Me!Тип = "*Н*" Then
Me!РПН_Тип.Visible = "True"
Else
Me!РПН_Тип.Visible = "False"
End If


не работает
raytek вне форума Ответить с цитированием
Старый 22.06.2012, 11:55   #2
gluk_fm
Форумчанин
 
Аватар для gluk_fm
 
Регистрация: 09.06.2011
Сообщений: 515
По умолчанию

Добрый день.
Правильно так:
Код:
If Me!Тип = '*Н*' Then
Me!РПН_Тип.Visible = True
Else
Me!РПН_Тип.Visible = False
End If
gluk_fm вне форума Ответить с цитированием
Старый 22.06.2012, 12:36   #3
shanemac51
Участник клуба
 
Аватар для shanemac51
 
Регистрация: 12.08.2010
Сообщений: 1,079
По умолчанию

Код:
If Me!Тип.value  like  '*Н*' Then
Me!РПН_Тип.Visible = True
Else
Me!РПН_Тип.Visible = False
End If
Имя-Галина== почта shanemac51@yandex.ru скайп shanemac51 c 8-15мск будни
Сфера интересов--word-excel-access-распознавание
shanemac51 вне форума Ответить с цитированием
Старый 22.06.2012, 20:33   #4
Teslenko_EA
Участник клуба
 
Регистрация: 10.08.2009
Сообщений: 1,796
По умолчанию

Здравствуйте raytek.
действительно и кавычки в Вашем коде лишние, и равенство не проверяется с символами подстановки,
а строка может быть одна:
Код:
Me!РПН_Тип.Visible = InStr(1, Me!Тип & "", "Н", vbTextCompare)
Евгений.

P.S. выкладываемый код заключайте в тэги [соde] ... [/соde], что-бы он не терялся среди текста.
для этого на панели инструментов расположена кнопка - #
Teslenko_EA вне форума Ответить с цитированием
Старый 22.06.2012, 23:00   #5
raytek
Пользователь
 
Регистрация: 07.11.2011
Сообщений: 67
По умолчанию

Всем огромное спасибо, но заработал только код от Teslenko_EA

Me!РПН_Тип.Visible = InStr(1, Me!Тип & "", "Н", vbTextCompare)

при наличии в тексте буквы Н элемент управления РПН_Тип становится невидимым, что нужно поменять в коде чтобы все было наоборот?
raytek вне форума Ответить с цитированием
Старый 22.06.2012, 23:25   #6
Teslenko_EA
Участник клуба
 
Регистрация: 10.08.2009
Сообщений: 1,796
По умолчанию

raytek, свойство Visible понимает логические значения (0/1)
ноль - Ложь, единица (и всё что отличается от нуля) - Истина
Об этом и многом другом написано во всех учебниках по VB(A)

Но если Вам необходимо решить только эту задачу,
то инвертировать Вы сможете подобной конструкцией:
Код:
Dim b as boolean
b = InStr(1, Me!Тип & "", "Н", vbTextCompare)
Me!РПН_Тип.Visible = Not b
Евгений.
P.S. все свои сообщения я подписываю в надежде, что обращаться ко мне будут по имени.
Teslenko_EA вне форума Ответить с цитированием
Старый 23.06.2012, 12:26   #7
raytek
Пользователь
 
Регистрация: 07.11.2011
Сообщений: 67
По умолчанию

Огромное спасибо Евгений, к сажелению я не силен в VBA и книги мне не помогли, поэтому создаю базу по методу проб и ошибок. Благодаря этому форуму неплохо продвинулся в перед, так что извените за тупые вопросы, все делаю не по знаниям а по аналогии.

С логическим оператором все заработало, а какой код например для свойства Width
raytek вне форума Ответить с цитированием
Старый 26.06.2012, 20:47   #8
raytek
Пользователь
 
Регистрация: 07.11.2011
Сообщений: 67
По умолчанию

Чувствую лигбез закончился....
raytek вне форума Ответить с цитированием
Старый 27.06.2012, 07:00   #9
Woodlin
Форумчанин
 
Регистрация: 30.03.2010
Сообщений: 153
По умолчанию

Цитата:
Сообщение от raytek Посмотреть сообщение
Чувствую лигбез закончился....

Одна тема - один вопрос.
А вообще в редакторе VBA есть полезная штука, в меню Veiw->Object Browser (в моей версии офиса F2), думаю с ней разберетесь. Или вот хороший ресурс: http://office.microsoft.com/ru-ru/access-help/?CTT=97
Woodlin вне форума Ответить с цитированием
Старый 27.06.2012, 08:24   #10
Teslenko_EA
Участник клуба
 
Регистрация: 10.08.2009
Сообщений: 1,796
По умолчанию

Здравствуйте raytek.
к сожалению говорить о полном окончании ЛикБез (ликвидация безграмотности) в Вашем случае - ещё рано.
"..а какой код .. для свойства.." описание всех объектов есть в учебниках
"..книги мне не помогли.." - выхода может быть два, смените книги и попытайтесь ещё раз, или осваивайте другой вид деятельности - не программирование.

Евгений.
Teslenko_EA вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Преобразовать формулы в выражение на языке VBA Wika Помощь студентам 0 27.09.2010 21:16
VBA - можно ли выполнить выражение, заданное строкой alexshm Microsoft Office Excel 3 22.09.2010 21:58
Регулярное выражение! Evgen1984 Общие вопросы .NET 4 14.09.2010 19:44
Выражение в С++ mambr Общие вопросы C/C++ 9 19.09.2009 20:02
Логическое выражение DaniyMilner Общие вопросы C/C++ 6 22.02.2009 19:14