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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.02.2009, 11:08   #1
Bbalt
 
Регистрация: 13.02.2009
Сообщений: 3
Печаль Выделение цветом определённых ячеек

Есть маленькая проблемка которую очень надо решить.
Имеется список диспетчерских наименований 1859 штук.
Диспетчерское наименование должно быть не более 40 символов.
Выбирать из 1859 штук, те котоыре не по 40 символов, это муторно да и полюбому пропущу что нить.

Так вот собственно вопрос (проблема):
Можно ли написать макрос что бы все ячейки где количество символов больше 40 пометелись красным чветом(например)?

Помогите всё утро сижу никак не дотумкаю

Последний раз редактировалось Bbalt; 13.02.2009 в 11:13.
Bbalt вне форума Ответить с цитированием
Старый 13.02.2009, 11:24   #2
Юнлинг
Форумчанин
 
Регистрация: 17.10.2008
Сообщений: 239
По умолчанию

Цитата:
Сообщение от Bbalt Посмотреть сообщение
Есть маленькая проблемка которую очень надо решить.
Имеется список диспетчерских наименований 1859 штук.
Диспетчерское наименование должно быть не более 40 символов.
Выбирать из 1859 штук, те котоыре не по 40 символов, это муторно да и полюбому пропущу что нить.

Так вот собственно вопрос (проблема):
Можно ли написать макрос что бы все ячейки где количество символов больше 40 пометелись красным чветом(например)?

Помогите всё утро сижу никак не дотумкаю
Зачем макрос если можно решить все условным форматированием. См. вложение
Вложения
Тип файла: rar Книга4.rar (1.8 Кб, 27 просмотров)
Юнлинг вне форума Ответить с цитированием
Старый 13.02.2009, 11:32   #3
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Есть много вариантов.
Если 1859 штук, да еще разбросанных по столбцам, то у условного форматирования "снесет крышу". К сожалению, автор не оговаривает, как и где могут располагаться те значения, которые нужно контролировать.
В общем случае, например, так:
Код:
Sub Main()
    Application.ScreenUpdating = False
    For Each Cell In ActiveSheet.UsedRange
        If Len(Cell) > 40 Then Cell.Interior.ColorIndex = 3
    Next
End Sub
Если же, контролируемые значения расположены, например, в одном столбце, то можно сделать процедуру гораздо быстрее.
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 13.02.2009, 11:53   #4
Volodshan
Форумчанин
 
Регистрация: 20.05.2008
Сообщений: 241
По умолчанию

Bbalt! Вы указали "Диспетчерское наименование должно быть не более 40 символов." Если из 2000 1500 будут больше и все "разукрашены", то все придется ВРУЧНУЮ перебирать, чтобы урезать? Может другой выход искать? Взять ПСТРом первые 40 символов. Если есть кодирововный лист, то по нему сделать замену. И т.д., и т.п. Поясните цель.
Volodshan вне форума Ответить с цитированием
Старый 13.02.2009, 11:56   #5
Bbalt
 
Регистрация: 13.02.2009
Сообщений: 3
По умолчанию ОГРОМНОЕ СПАСИБО!!!

Спасибо Юнлинг!
Спасибо SAS888!

Попробовал оба способа, всё получилось!
СПАСИБО ОГРОМНОЕ!!!!
Bbalt вне форума Ответить с цитированием
Старый 13.02.2009, 12:07   #6
Bbalt
 
Регистрация: 13.02.2009
Сообщений: 3
По умолчанию

Цитата:
Сообщение от Volodshan Посмотреть сообщение
Bbalt! Вы указали "Диспетчерское наименование должно быть не более 40 символов." Если из 2000 1500 будут больше и все "разукрашены", то все придется ВРУЧНУЮ перебирать, чтобы урезать? Может другой выход искать? Взять ПСТРом первые 40 символов. Если есть кодирововный лист, то по нему сделать замену. И т.д., и т.п. Поясните цель.
Понимаю ваш вопрос!
Цель заключается в следующем:
Имеется справочник с диспетчерскими наименованиями (ДН), у каждого наименования огромная куча параметров и характеристик (столбцы) по которым (ДН) должно загружаться в более глобальную систему. Так вот эта система позволяет диспетчерское наименование лишь 40 символов.
Названия приблизительно такие:

"Здания электрических и тепловых сетей - инженерные сооружения для размещения специального оборудования переходного пункта высокой стороны"

Так вот нужно пометить эти наименования что бы показать специалистам по Электроэнергетике дабы они уложили название в 40 символов что бы им было удобно работать в дальнейшем.

P.S. После выборки пометились 469 ДН.
Для людей которые с компьютером работают отнюдь не каждый день, исправить 469 наименований куда легче, чем сначала найти эти 469 из 1859 наименований и ещё попутно их исправлять!

Последний раз редактировалось Bbalt; 13.02.2009 в 13:00. Причина: Результат и объяснение!
Bbalt вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выделение цветом ratgunter Общие вопросы C/C++ 0 05.12.2008 23:22
Включение функции выделение цветом xxdima Microsoft Office Excel 3 28.08.2008 23:47
выделение строк цветом в StringGrid kate158 Помощь студентам 1 06.08.2008 09:56
как сцепить несколько ячеек чтобы сохранилось выделение цветом или жирным шрифтом gribkow Microsoft Office Excel 7 23.04.2008 09:27