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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.08.2009, 10:26   #1
Иванов_ДМ
Пользователь
 
Регистрация: 17.02.2009
Сообщений: 96
По умолчанию Выделить шрифт в нужных ячейках

Помогите, плиз!
Во вложении - файл, в котором макрос должен выделить красным шрифтом те ячейки по столбцу 3 (клиент), у которых объем выборки в августе (столбец 7) меньше 0,5 по отношению к июлю (столбец 4).
То есть по каждой строке "столбец 7" / "столбец 4" < 0,5

Макрос выдает ошибку 6 (Overflow).
Что это значит и как исправить?
Вложения
Тип файла: rar Несработавшие.rar (11.8 Кб, 8 просмотров)
Иванов_ДМ вне форума Ответить с цитированием
Старый 27.08.2009, 10:32   #2
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Извините, вложение не смотрел. Просто вопрос: а почему нужен именно макрос? Условное форматирование не подойдет?
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 27.08.2009, 10:38   #3
Иванов_ДМ
Пользователь
 
Регистрация: 17.02.2009
Сообщений: 96
По умолчанию

SAS888, можно, но есть проблема...
Этот макрос - часть отчета, который делается автоматически из массива данных для людей, которые даже автофильтр с трудом ставить умеют Поэтому для них лучше сделать кнопку и макрос, который сам все сделает и и выдаст результат, чем объяснять им условное форматирование...
Иванов_ДМ вне форума Ответить с цитированием
Старый 27.08.2009, 10:59   #4
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Цитата:
чем объяснять им условное форматирование...
Пусть они об этом и не знают. Просто, когда в требуемой ячейке окажется контролируемый результат, то шрифт (заливка и т.п.) изменится. Это "забито" Вами в нужные ячейки и работает не зависимо от пользователя.
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 27.08.2009, 11:02   #5
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

там на 0 делилось, вот и ошибка.
я бы так оставил:
Код:
Sub Несработавшие()
Dim r As Long
    With Sheets("Лист1")
        For r = .Cells(Rows.Count, 4).End(xlUp).Row To 5 Step -1
          If Cells(r, 7).Value * 2 < Cells(r, 4).Value Then
            Cells(r, 3).Font.ColorIndex = 3
          End If
        Next
    End With
End Sub
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете

Последний раз редактировалось IgorGO; 27.08.2009 в 11:05.
IgorGO вне форума Ответить с цитированием
Старый 27.08.2009, 11:06   #6
Иванов_ДМ
Пользователь
 
Регистрация: 17.02.2009
Сообщений: 96
По умолчанию

1. Сам лист отчета создается после обработки массива.
2. Условие, по которому выделяется, ячейка можем изменяться, (хотя это кажется можно сделать и в УФ)
3. По-логике, если код макроса будет нормально работать (то есть определять нужные ячейки), то я планировал добавить функцию "скрыть не выделенные строки"...
Так что все-таки наверное лучше макросом...
Иванов_ДМ вне форума Ответить с цитированием
Старый 27.08.2009, 11:10   #7
Иванов_ДМ
Пользователь
 
Регистрация: 17.02.2009
Сообщений: 96
По умолчанию

IgorGO пока писал ответ на предыдущий пост, решение пришло!
Спасибо огромное!
Че-то про возможную ошибку формуле я и не подумал...
А как тогда сделать с изменяемым значением условия (которое скажем будет в ячейке "A1")?

Последний раз редактировалось Иванов_ДМ; 27.08.2009 в 11:13.
Иванов_ДМ вне форума Ответить с цитированием
Старый 27.08.2009, 11:11   #8
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

а вот и условное форматирование.
Вложения
Тип файла: rar Книга145.rar (11.4 Кб, 6 просмотров)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 27.08.2009, 11:14   #9
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Код:
If Cells(r, 7).Value < Cells(r, 4).Value*Cells(1, 1).Value Then
Вложения
Тип файла: rar Книга145.rar (11.2 Кб, 3 просмотров)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете

Последний раз редактировалось IgorGO; 27.08.2009 в 11:19.
IgorGO вне форума Ответить с цитированием
Старый 27.08.2009, 11:17   #10
Иванов_ДМ
Пользователь
 
Регистрация: 17.02.2009
Сообщений: 96
По умолчанию

Все, разобрался! Большое спасибо!
Иванов_ДМ вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
удаление не нужных знаков после запятой. Alar Общие вопросы Delphi 4 31.05.2012 19:59
сортировка нужных строк mistx Microsoft Office Excel 5 19.08.2009 08:14
Как убрать колонтитулы на нужных страницах? Окоча Юра Microsoft Office Word 4 12.06.2009 21:38
ВЫБОР НУЖНЫХ ДАННЫХ Slavik Microsoft Office Excel 4 13.04.2009 21:37
выборка нужных значений, вывод AZaharov Microsoft Office Excel 19 17.10.2008 12:22