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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 04.11.2008, 12:53   #1
ZLOdeev
 
Регистрация: 17.10.2008
Сообщений: 7
Сообщение Заливка - как контроль просуммированных строк

Здравствуйте!
Есть код, который ищет значение согласно заданным критериям поиска

For i = 1 To Cells(Rows.Count, "B").End(xlUp).Row
If Cells(i, "C") = 1 Then
Select Case Cells(i, "B")
Case 2010000 To 2010999: R14w1 = R14w1 + Cells(i, "F")
Case 2017000 To 2017999: R14w1 = R14w1 + Cells(i, "F")


Я пропустил где-то одну цифру и теперь не могу найти свою ошибку, так как данных много, не могу отследит, что именно просуммировал макрос.

Можно ли сделать так, чтоб выбранную строку (желательно) / ячейку (если меньше изменений будет в коде) можно было залить заливкой?
Можно ли чтоб код менялся только в конце?
Типа:
Case 2010000 To 2010999: R14w1 = R14w1 + Cells(i, "F") .серый
Case 2017000 To 2017999: R14w1 = R14w1 + Cells(i, "F") .красный
Вложения
Тип файла: rar Help_Color.rar (27.9 Кб, 11 просмотров)
ZLOdeev вне форума
Старый 04.11.2008, 14:43   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Во-первых, не совсем понятна строка

.Range([B5], Cells(Cells(Rows.Count, "C").End(xlUp).Row, "B")).ClearContents

Скорее всего, надо очищать столбец С (с числами), поэтому указанную строку я исправил на

.Range("c5:c" & .Cells(.Rows.Count, "b").End(xlUp).Row).ClearConten ts
.Range("c5:c" & .Cells(.Rows.Count, "b").End(xlUp).Row).Interior.Co lor = vbWhite


Цвет ячейки можно изменить, например, так:

Cells(i, "F").Interior.Color = vbMagenta
где vbMagenta - одна из констант VBA.ColorConstants

Или так:

[a1].interior.colorindex=3

где значение свойства colorindex находится в пределах от 0 до 56

См. вложение:
Вложения
Тип файла: rar Help_Color2.rar (30.3 Кб, 26 просмотров)
EducatedFool вне форума
Старый 04.11.2008, 15:40   #3
ZLOdeev
 
Регистрация: 17.10.2008
Сообщений: 7
Хорошо

Все супер и в ярких красках

Range("f1:f" & Cells(ActiveSheet.Rows.Count, "f").End(xlUp).Row).Interior.ColorI ndex = 0

Без этого не обойтись!!!

Спасибо.

Последний раз редактировалось ZLOdeev; 04.11.2008 в 15:51. Причина: УРА!!! Нашел одну лишнюю строчку :D
ZLOdeev вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Градиентная заливка Sanek777 Мультимедиа в Delphi 4 07.11.2008 16:23
Градиентная заливка APi функция GradientFillRect в Delphi Roberto Win Api 7 11.04.2008 13:34
Заливка с допуском devi409 Общие вопросы Delphi 11 15.10.2007 06:57
заливка строк DBGrid'а antoniosm БД в Delphi 10 18.09.2007 09:19