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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.11.2009, 10:55   #1
Andrey3055
Пользователь
 
Регистрация: 27.10.2009
Сообщений: 15
По умолчанию Аналог функции ИЛИ (OR) на VBA

Добрый день!
Подскажите, пожалуйста аналог функции "ИЛИ" на VBA.
Функцию "И" записываем в VBA как "&", а как записать "ИЛИ"?
Andrey3055 вне форума Ответить с цитированием
Старый 03.11.2009, 10:58   #2
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Не путайте "&" и "And".
Например, "если A > 2 ИЛИ A < 5, то..." Можно записать так:
"If A >2 Or A < 5 Then..."
Вы это спрашивали?
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 03.11.2009, 13:05   #3
viter.alex
Балуюсь кодами
Участник клуба
 
Аватар для viter.alex
 
Регистрация: 09.01.2009
Сообщений: 1,837
По умолчанию

Функцию "И" записываем как And, функцию "ИЛИ" — как Or, функцию "НЕ" — как Not. А знак & служит для объединения строк
Лучше день потерять — потом за пять минут долететь!©
viter.alex вне форума Ответить с цитированием
Старый 03.11.2009, 13:41   #4
Andrey3055
Пользователь
 
Регистрация: 27.10.2009
Сообщений: 15
По умолчанию

Спасибо!
А как тогда дописать выборку в макросе?

Есть константы в названии в ячейках. Нас интересует константа sC = "коробка № гос. Рег. " и константа sP = "Книга № гос. Рег. "


Const sL = "Низкое", sH = "Высокое", sM = "Среднее", sC = "коробка № гос. Рег. ", sP = "Книга № гос. Рег. "

Здесь в строке мы склеиваем константу и другое наименование
o.Cells(i, 1) = sC & .Cells(c.Row + 2, c.Column)

Как в этой строчке сделать так, чтобы выбиралась одна из двух констант (либо sC, либо sP)?
Andrey3055 вне форума Ответить с цитированием
Старый 03.11.2009, 13:47   #5
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

o.Cells(i, 1) = iif(у_с_л_о_в_и_е, sC, sP) & .Cells(c.Row + 2, c.Column)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Аналог continue в VBA motorway Microsoft Office Excel 10 05.06.2015 00:47
Аналог формулы СУММЕСЛИ на VBA bud-dy Microsoft Office Excel 7 03.02.2014 06:01
Написать в VBA аналог формулы екселя. tae1980 Microsoft Office Excel 8 13.04.2009 00:08
Аналог функции WriteProcessMemory KleoY Win Api 10 31.03.2009 01:17
Бага или фича функции Replace Function (VBA)? Alkaline Microsoft Office Excel 3 27.12.2007 11:26