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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.06.2012, 02:10   #1
Roxi Rox
Новичок
Джуниор
 
Регистрация: 11.06.2012
Сообщений: 1
По умолчанию Ищу решение

Пытаюсь программировать на VBA в Excel(т.е пока еще чайник). Наткнулась на интересную задачку и запуталась с кодом. Люди, Help!!!
Вот задачка:
Все буквы слова, в котором содержится не менее двух букв а, заменить на заглавные буквы.
Roxi Rox вне форума Ответить с цитированием
Старый 11.06.2012, 03:07   #2
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Вот ваше решение

Len (функция) - возвращает число символов строки или число байт, необходимых для хранения
переменной

UCase (функция) - возвращает строку, преобразованную в верхний регистр
If...Then... Else (оператор) - выполнение групп команд в зависимости от значения выражения
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 11.06.2012, 20:23   #3
nerv
Форумчанин
 
Аватар для nerv
 
Регистрация: 26.04.2010
Сообщений: 450
По умолчанию

Цитата:
Сообщение от doober Посмотреть сообщение
или число байт, необходимых для хранения переменной
// LenB() .
Тишина – самый громкий звук
nerv вне форума Ответить с цитированием
Старый 11.06.2012, 22:07   #4
alex77755
Форумчанин
 
Аватар для alex77755
 
Регистрация: 14.02.2009
Сообщений: 753
По умолчанию

Цитата:
и запуталась с кодом
Код в студию - поможем распутать.
Вот только что-то подсказывает, что не сама ты "Наткнулась на интересную задачку", а тебя наткнули выдав задание.
помогу решить контрольные VB6, VBA (недорого)
Alex77755@mail.ru
alex77755 вне форума Ответить с цитированием
Старый 11.06.2012, 22:27   #5
ikki_pf
Форумчанин
 
Регистрация: 25.02.2012
Сообщений: 166
По умолчанию

http://www.cyberforum.ru/vba/thread602002.html
ikki_pf вне форума Ответить с цитированием
Старый 12.06.2012, 07:44   #6
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Некоторые дополнения к коду по ссылке:
1. Не зависимо от установки Option Base, счет элементов в массиве, полученном с помощью оператора Split, будет начинаться с 0. Соответственно, чтобы не пропускалось первое слово в предложении, и цикл перебора нужно организовывать
Код:
For n=0 To UBound(words)
2. Условие вхождения в текущее слово двух и более букв "а" мощно (проще) проверять так:
Код:
If LCase(words(n)) Like "*а*а*" Then words(n) = UCase(words(n))
P.S. Обратите внимание, что в примере ищем русскую букву "а".
Чем шире угол зрения, тем он тупее.

Последний раз редактировалось SAS888; 12.06.2012 в 07:51. Причина: Добавлено
SAS888 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ищу CRM решение/базу данных/учен клиентов/ рассмотрю варианты Transfers_Kiev Софт 1 26.04.2012 11:19
ищу AleksENN Фриланс 5 09.11.2010 01:07
Ищу! Tukzar Общие вопросы Delphi 5 18.07.2010 14:12